Subscription levels in an internet-based content platform

ABSTRACT

An internet-based content platform for providing subscription levels to channels are described. The internet-based content platform presents to an end user, a channel that includes a plurality of media items, a list of types of access to the plurality of media items, and a plurality of subscription levels associated with different subscription fees for different types of access. The channel is one of a plurality of channels of an internet-based content platform. The internet-based content platform receives a selection of one of the plurality of subscription levels for the channel. The internet-based content platform records the selected subscription level of the end user for the channel. The internet-based content platform provides a type of access to the plurality of media items of the channel for the end user according to the recorded subscription level of the end user for the channel.

RELATED APPLICATION

This application claims priority to U.S. Provisional Patent ApplicationNo. 61/820,665, filed May 7, 2013, which is herein incorporated byreference.

TECHNICAL FIELD

Embodiments of the present disclosure relate to the field of mediaconsumption and, more particularly, to subscriptions to channels of aninternet-based content platform.

BACKGROUND

Online content sharing platforms typically allow users to upload, view,and share digital content such as media items. Media items may includeaudio clips, movie clips, TV clips, music videos, images, or othermultimedia content. Users may use computing devices (such as smartphones, cellular phones, laptop computers, desktop computers, netbooks,tablet computers) to use, play, and/or otherwise consume media items(e.g., watch digital videos, and/or listen to digital music).

Media items can be provided to a user through channels. A channel caninclude content available from a common source, or content having acommon subject or theme. Currently, subscription mechanisms offered bymedia providers offer little or no flexibility to users and hinder theusers' desire to quickly gain access to content of interest.

SUMMARY

The below summary is a simplified summary of the disclosure in order toprovide a basic understanding of some aspects of the disclosure. Thissummary is not an extensive overview of the disclosure. It is intendedto neither identify key or critical elements of the disclosure, nordelineate any scope of the particular implementations of the disclosureor any scope of the claims. Its sole purpose is to present some conceptsof the disclosure in a simplified form as a prelude to the more detaileddescription that is presented later.

In one implementation, a method for providing subscription levels in aninternet-based content platform is described. The method includespresenting to an end user, a channel that includes a plurality of mediaitems, a list of types of access to the plurality of media items, and aplurality of subscription levels associated with different subscriptionfees for different types of access. The channel is one of a plurality ofchannels of an internet-based content platform. The method furtherincludes receiving a selection of one of the plurality of subscriptionlevels for the channel. The method also includes recording the selectedsubscription level of the end user for the channel. The method includesproviding a type of access to the plurality of media items of thechannel for the end user according to the recorded subscription level ofthe end user for the channel.

In additional implementations, computing devices for performing theoperations described herein are also implemented. Additionally, inembodiments of the disclosure, a computer readable storage media storesinstructions for performing the operations of the above describedembodiments. In other implementations, an apparatus that includes meansfor performing the operations described herein are also implemented

BRIEF DESCRIPTION OF THE DRAWINGS

The present disclosure will be understood more fully from the detaileddescription given below and from the accompanying drawings of variousembodiments of the present disclosure, which, however, should not betaken to limit the present disclosure to the specific embodiments, butare for explanation and understanding only.

FIG. 1 illustrates an example network architecture in which embodimentsof the present disclosure can be implemented.

FIG. 2 illustrates a block diagram of a channel subscription subsystemin accordance with some implementation of the present disclosure.

FIG. 3 illustrates a block diagram of a channel content providingsubsystem in accordance with some implementation of the presentdisclosure.

FIG. 4 illustrates a block diagram of a channel advertisement managementsubsystem in accordance with some implementation of the presentdisclosure.

FIG. 5 illustrates a block diagram of a channel content accessmanagement subsystem in accordance with some implementation of thepresent disclosure.

FIG. 6 illustrates a block diagram of a composite channel managementsubsystem in accordance with some implementation of the presentdisclosure.

FIG. 7 illustrates a flow diagram of a method for creating asubscription of a user to a paid channel in accordance with someimplementation of the present disclosure.

FIG. 8 illustrates a flow diagram of a method for presenting media itemsof a paid channel in a user feed in accordance with some implementationof the present disclosure.

FIG. 9 illustrates a flow diagram of a method for presenting media itemsof a paid channel in a user subscription list in accordance with someimplementation of the present disclosure.

FIG. 10 illustrates a flow diagram of a method for presenting mediaitems of a paid channel in search result in accordance with someimplementation of the present disclosure.

FIG. 11 illustrates a flow diagram of a method for providing access tomedia items in an internet-based content platform based on a usersubscription, in accordance with some implementation of the presentdisclosure.

FIG. 12A illustrates a flow diagram of a method for permitting an enduser to select advertising attributes of a channel when subscribing tothe channel, in accordance with some implementation of the presentdisclosure.

FIG. 12B illustrates a flow diagram of a method for presenting mediaitems of a channel to an end user based on user-selected advertisingattributes of the channel, in accordance with some implementation of thepresent disclosure.

FIG. 13 illustrates a flow diagram of a method for permitting an enduser to select one or more subscription levels when subscribing to achannel, in accordance with some implementation of the presentdisclosure.

FIGS. 14A-E illustrate a flow diagram of a method for presenting a mediaitem to an end user according to a subscription level, in accordancewith some implementation of the present disclosure.

FIG. 15A illustrates an example user home page graphical user interface(GUI) in accordance with some implementation of the present disclosure.

FIG. 15B illustrates an example home GUI that may be presented to achannel curator after the channel curator creates a new channel and/orafter the channel curator logs into an internet-based content platform,according to some implementation of the present disclosure.

FIG. 16 illustrates an example search GUI in accordance with someimplementation of the present disclosure.

FIG. 17 illustrates an example browse channels GUI in accordance withsome implementation of the present disclosure.

FIGS. 18A-B illustrate example advertisement GUIs in accordance withsome implementation of the present disclosure.

FIG. 19 illustrates an example channel home GUI in accordance with someimplementation of the present disclosure.

FIG. 20 illustrates an example channel feed GUI in accordance with someimplementation of the present disclosure.

FIG. 21 illustrates an example composite channel home GUI in accordancewith some implementation of the present disclosure.

FIGS. 22A-B illustrate example watch GUIs in accordance with someimplementation of the present disclosure.

FIGS. 23A-D illustrate example channel subscription information GUIs inaccordance with some implementation of the present disclosure.

FIG. 24A illustrates an example channel subscription GUI in accordancewith some implementation of the present disclosure.

FIG. 24B illustrates an example subscription payment GUI in accordancewith some implementation of the present disclosure.

FIG. 24C illustrates an example watch GUI in accordance with someimplementation of the present disclosure.

FIG. 24D illustrates an example component channel addition GUI inaccordance with some implementation of the present disclosure.

FIG. 25 illustrates an example subscribed channel home GUI in accordancewith some implementation of the present disclosure.

FIG. 26 illustrates an example subscribed composite channel home GUI inaccordance with some implementation of the present disclosure.

FIG. 27 illustrates an example subscription manager GUI in accordancewith some implementation of the present disclosure.

FIG. 28 illustrates block diagram of an example computing device thatmay perform one or more of the operations described herein.

DETAILED DESCRIPTION

The following disclosure sets forth numerous specific details such asexamples of specific systems, components, methods, and so forth, inorder to provide a good understanding of several embodiments of thepresent disclosure. It will be apparent to one skilled in the art,however, that at least some embodiments of the present disclosure may bepracticed without these specific details. In other instances, well-knowncomponents or methods are not described in detail or are presented insimple block diagram format in order to avoid unnecessarily obscuringthe present disclosure. Thus, the specific details set forth are merelyexamples. Particular implementations may vary from these example detailsand still be contemplated to be within the scope of the presentdisclosure.

Implementations of the disclosure pertain to subscribing users tochannels of an internet-based content platform. An internet-basedcontent platform can be any platform that facilitates content uploading,sharing of content and feedback among various entities (e.g.,individuals, organizations, etc.) and/or content curation. Entities arecollectively referred to herein as users. A channel can be data contentavailable from a common source or data content having a common topic ortheme. A channel can be associated with a curator who can performmanagement actions on the channel. Management actions may include, forexample, adding media items to the channel, removing media items fromthe channel, defining subscription requirements for the channel,defining presentation attributes for channel content, defining accessattributes for channel content, etc. The channel content can be digitalcontent uploaded to the internet-based content platform by a channelcurator and/or digital content selected by a channel curator from thecontent available on the internet-based content platform. A channelcurator can be a professional content provider (e.g., a professionalcontent creator, a professional content distributor, a content rentalservice, a television (TV) service, etc.) or an amateur individual.Channel content can include professional content (e.g., movie clips, TVclips, music videos, educational videos) and/or amateur content (e.g.,video blogging, short original videos, etc.). Users, other than thecurator of the channel, can subscribe to one or more channels in whichthey are interested.

According to some aspects of the disclosure, a user of theinternet-based content platform is allowed to select a paid channel frommultiple paid channels of different curators, subscribe to the paidchannel, and immediately gain access to the content of the paid channel.The subscription and access can be facilitated via a single userinterface which may involve just a few user interactions to find a paidchannel of interest, subscribe to the paid channel, and access thecontent of the paid channel. The access to the content of the paidchannel can be provided via a user feed. A user feed refers to contentautomatically generated for the subscriber that can include, forexample, media items from one or more channels of the subscriber,feedback of other users for those media items, etc. The access to thecontent of the paid channel can also be provided via a subscription listpresented in the user interface, via a search result presented inresponse to a search query of the subscriber, or the like.

The content of the paid channel can change dynamically, and the changedcontent can be immediately available to the subscribers. For example,the internet-based content platform can change the content of the paidchannel in real time in response to a request of the curator of the paidchannel (e.g., a request to add a new media item to the channel or arequest to remove an existing media item from the channel), and thesubscribers of the paid channel can be automatically presented with thechanged content without any delay.

According to some aspects of the disclosure, the internet-based contentplatform can provide paid channels that include both paid and free mediaitems. A user can select a paid channel of interest from a list of paidchannels and may see that some media items of the selected paid channelare free and some media items are paid. If the user has not previouslysubscribed to the paid channel, the user may be allowed to view or playa free media item of the paid channel but the user may not be allowed toview or play a paid media item of the paid channel.

According to some aspects of the disclosure, the internet-based contentplatform can permit the user to select a subscription level whensubscribing to a free or paid channel. The subscription level can beassociated with different subscription fees for different types ofaccess to the channel. Other subscription levels can be associated withdifferent advertising attributes of the channel. Offering thesubscription levels provide users with greater flexibility to selectcontent and channel characteristics that better match their personalneeds. For example, when a user selects a particular subscription levelwhen subscribing to a channel, the user can view media items of thechannel with fewer advertisements or can unlock access for additionaluser devices (e.g., a mobile phone, a tablet, etc.).

In some implementations, when the user is a subscriber of a channel(e.g., paid or free), the internet-based content platform can presentthe media item according to a subscription level that corresponds to acertain type of access or certain advertising attributes, as describedherein. Similarly, when the user is not a subscriber of the channel, theinternet-based content platform can present the requested media itemaccording to a non-subscriber set of advertising attributes or anon-subscriber type of access.

For contemporary television service platforms, users typically submit asubscription request and then wait for an installation technician tocomplete the setup. In some instances, these services send a technicianto the physical location of the user. In other instances, the technicianmanually activates the user subscription. In some contemporarytelevision service platforms, the user can be usually required to dial aphone number or access another website to complete the subscriptionactivation. Unlike these contemporary television service platforms,aspects of the internet-based content platform described herein permit auser to subscribe to a channel and then start consuming content atvirtually the same time and within the same website or mobileapplication.

In addition, contemporary video hosting and sharing platforms typicallyeither provide access to all content of a paid channel to a subscribeduser, or limit or prevent access to all content of the paid channel to anon-subscribed user. Unlike these contemporary platforms, aspects of theinternet-based content platform described herein permit full access tosome content of a paid channel while restricting or limiting access toother content of the paid channel. A non-subscribed user can have fullaccess to some movies of the paid channel, for example, while havinglimited or no access to other movies of the paid channel. The user cantake an action, such as by subscribing to the paid channel, to unlockaccess to the other movies.

Further, contemporary media hosting or television platforms usually donot permit users to select advertising attributes when subscribing to achannel. Some music platforms can remove all advertisements when a usersubscribes to the platform, but they typically do not permit users tochoose different advertising attributes on a per channel basis. Incontrast, aspects of the internet-based content platform describedherein permit users to select different advertising attributes whensubscribing to a channel.

Contemporary media hosting or television platforms typically do notpermit users to select different subscription levels to unlock differenttypes of access on a per-channel basis. For example, while contemporarytelevision platforms may permit users to subscribe to differenttelevision packages, such platforms may not permit different accesstypes for different individual channels. Aspects of the presentdisclosure address these limitations by giving users a significant levelof flexibility on what they can purchase and watch. Using the techniquesdescribed herein, users can quickly gain access to desired content.Further, users can easily select different subscription levels that bestfit their needs for individual channels.

As discussed above, a channel can be data content available from acommon source or data content having a common topic or theme. The datacontent can include on or more media items. Examples of a media itemscan include, and are not limited to, digital video, digital movies,digital photos, digital music, website content, social media updates,electronic books (ebooks), electronic magazines, digital newspapers,digital audio books, electronic journals, web blogs, real simplesyndication (RSS) feeds, electronic comic books, software applications,etc., media items comprising at least one of a video item, an audioitem, an image, a blog entry, a tweet, a social network post, an onlinepublication, a software program, or an online video game. A media itemmay be consumed via a web browser and/or via a mobile deviceapplication. For brevity and simplicity, an online video (alsohereinafter referred to as a video) is used as an example of a mediaitem throughout this document. As used herein, “media,” media item,”“online media item,” “digital media,” and a “digital media item” caninclude an electronic file that can be executed or loaded usingsoftware, firmware or hardware configured to present the digital mediaitem to an entity. Content can also include live-streamed content andmedia items available on-demand.

The media items can be digital content chosen by a channel curator. Thechannel curator can be a user, a content provider, a media company, abroadband provider, a broadcaster, etc. The channel curator also canselect various channel characteristics, such as whether the channel isfree or paid. For paid channels, the curator can set or select asubscriber fee. The curator can also select different characteristics ofthe subscription, or define subscription levels that correspond todifferent types of access to the channels and corresponding subscriberfees. The internet-based content platform can include multiple channelsthat are created or curated by different channel curators.

A channel can be a paid channel that can be offered as a rental,purchase, or a paid subscription. A paid subscription involves arecurring payment for temporary access to an experience on theinternet-based content platform. A rental involves a one-time paymentfor temporary access, and a purchase involves a one-time payment forunlimited access. Individual paid channels can be available for purchase“a la carte” (i.e. standalone) or as part of a package. Users can pickand choose the channels they want, unlike contemporary television andcable providers, where users obtain access to content as part of a largebundle.

As used herein, a channel can also refer to a composite channel. Acomposite channel is a channel that includes at least one componentchannel along with additional content. For example, a composite channelcan include multiple component channels, or one or more componentchannels and at least one media item that is not part of any componentchannel. In one implementation, a component channel is not available forindividual subscription; it is only available through a subscription tothe composite channel.

FIG. 1 illustrates an example network architecture 100 in whichembodiments of the present disclosure can be implemented. The networkarchitecture 100 includes client devices 105A through 105N, a network115, an internet-based content platform 120 and a data store 150. In oneimplementation, network 115 may include a public network (e.g., theInternet), a private network (e.g., a local area network (LAN) or widearea network (WAN)), a wired network (e.g., Ethernet network), awireless network (e.g., an 802.11 network or a Wi-Fi network), acellular network (e.g., a Long Term Evolution (LTE) or LTE-Advancednetwork), routers, hubs, switches, server computers, and/or acombination thereof. In one implementation, the data store 150 may bemay be a memory (e.g., random access memory), a cache, a drive (e.g., ahard drive), a flash drive, a database system, or another type ofcomponent or device capable of storing data. The data store 150 may alsoinclude multiple storage components (e.g., multiple drives or multipledatabases) that may also span multiple computing devices (e.g., multipleserver computers).

The client devices 105A through 105N may each include computing devicessuch as personal computers (PCs), laptops, mobile phones, smart phones,tablet computers, netbook computers, e-readers, personal digitalassistants (PDA), or cellular phones etc. While only client devices105A-105N are shown in FIG. 1, network architecture 100 may support alarge number of concurrent sessions with many client devices 105.

Each client device includes at least one application 110 that allows anend user to subscribe to channels and view content and media items ofthe channels. For example, the application 110 may be a web browser thatcan present a list of subscribable channels to the end user. As a webbrowser, the application can also access, retrieve, present, and/ornavigate content (e.g., web pages such as Hyper Text Markup Language(HTML) pages, digital media items, etc.) served by a web server. Theapplication 110 may render, display, and/or present the list ofsubscribable channels and associated content to the end user. Theapplication 110 may also provide an embedded media player (e.g., aFlash® player or an HTML5 player) that is embedded in a web page (e.g.,a web page that may provide information about a product sold by anonline merchant). In another example, the application 110 may be astandalone application (e.g., a mobile application or mobile app) thatallows users to subscribe to channels and consume digital media items(e.g., digital videos, digital images, electronic books, etc.). Theapplication 110 may be provided to the client devices 105A through 105Nby the internet-based content platform 120. For example, the application110 may be a browser that provides a media player that is embedded in aweb page provided by the internet-based content platform 120. In anotherexample, the application 110 may be an application that is downloadedfrom an application distribution platform, such as an “app store.” (notshown).

The internet-based content platform 120 may include one or morecomputing devices, such as a rackmount server, a router computer, aserver computer, a personal computer, a mainframe computer, a laptopcomputer, a tablet computer, a desktop computer, etc.), data stores(e.g., hard disks, memories, databases), networks, software components,and/or hardware components.

The internet-based content platform 120 may provide digital content(e.g., digital video, streaming video, images, digital music, streamingmusic, social media information, etc.) to one or more of the clientdevice 105 and may allow users to share content among multiple users. Toprovide digital content, for example, the internet-based contentplatform 120 may allow a user to subscribe to a paid or free channel.The internet-based content platform 120 may present different types ofaccess or different subscriptions levels to the end user. Theinternet-based content platform 120 can also allow the end user toconsume, upload, search for, curate, share, approve of (“like”),dislike, and/or comment on media items of various channels.

Although each of the internet-based content platform 120 and data store150 are depicted in FIG. 1 as single, disparate components, thesecomponents may be implemented together in a single device or networkedin various combinations of multiple different devices that operatetogether. Examples of devices may include, but are not limited to,servers, mainframe computers, networked computers, process-baseddevices, and similar type of systems and devices.

Internet-based content platform 120 can include a channel subscriptionsubsystem 125 that creates and manages end user channel subscriptions, achannel content providing subsystem 130 that provides content to endusers, a channel advertisement management subsystem 135 that managesadvertisements presented to end users, a channel content accessmanagement subsystem 140 that manages different types of access for theend users, and a composite channel management subsystem 145 that managescomposite channel subscriptions and access. Internet-based contentplatform 120 can include any one of the above subsystems or anycombination of the above subsystems. The internet-based content platform120 and its respective subsystems can interact with the client device105, such as via the application 110, to communicate data between theinternet-based content platform 120 and the end user. The subsystems canbe implemented on a single server, a cluster of servers, a cloud, etc.The subsystems can also be implemented individually, each on a separateserver, cluster of servers, a cloud, etc.

Data store 150 may include any combination of subscription data 155,channel data 160, advertising attribute data 165 and access type data170. Subscription data 155 may include subscription data for users thathave subscribed to channels identified in channel data 160 (e.g.,registered users of an internet-based content platform). Thesubscription data 155 may include channels that a user has subscribedto, subscription levels for channels the user has subscribed to,selected types of access, selected advertising attributes, data contentthat the user has liked, topics the user is interested in, etc.

Channel data 160 may include identification information for variouschannels, such as an identifier of the channel (e.g., name), one or moreidentifiers (e.g., names) of content or media items associated with thechannel, a list of media items in each channel, and/or whetherindividual media items in the channel are free or paid, etc. Channeldata 160 can be used by the internet-based content platform 120 togenerate a list of channels to present to users. The channel data 160can be created based on input from a channel curator (e.g., subscriberfees for a channel, media item groups, etc.). For a composite channel,channel data 160 may also include identifiers of one or more componentchannels associated with the composite channel.

Advertising attribute data 165 may include various advertising schemesor models that can be implemented by the internet-based content platformwhen users consume content. Advertising attribute data 165 may include asubscriber set of advertising attributes (e.g., advertising attributesavailable to subscribers) and a non-subscriber set of advertisingattributes (e.g., advertising attributes available to non-subscribers).Advertising attributes may be specified for individual channels ormultiple channels (e.g., component channels of a composite channel,channels of the same curator, channels having the same theme, etc.).Advertising attribute data 165 may include instructions for presentingadvertisements to users. For example an advertising attribute can be aninstruction to display no advertisements to subscribers of a channel.Another advertising attribute can be an instruction to decrease a numberof advertisements presented to the end user after the end user hasconsumed at least one media item of a channel. Other examples ofsubscriber advertising attributes can include a decrease of an aggregatelength of time advertisements are presented to the end user after theend user has consumed at least one of media items of the channel, apresentation of advertisements of a specific category, a reduction of anumber of advertisements from a category, a frequency for presenting anadvertisement, a duration for presenting an advertisement, or an optionto skip an advertisement presentation within the channel. Advertisingattributes can affect any advertisement presented within theinternet-based content platform including in-stream advertisements,overlay advertisements, banner advertisements, etc. The non-subscriberadvertising attributes can include a full complement of advertisements.The non-subscriber advertising attributes can also include non-skippableadvertisements, or advertisements that can be skipped after a longerviewing duration than for subscribers of the channel.

Access type data 170 can include different types of access that can beavailable to users when consuming content. Types of access can include aquality characteristic of the media item (e.g., video resolution, suchas HD, 4k, 1080p, 1080i, 720p, etc.), offline access (e.g., cachingcontent for offline consumption), an addition of subtitles to the mediaitems, changing a language of the media items, access to content viaadditional user devices (e.g., a mobile phone, a table, etc.), blockingaccess to media items and/or channels (e.g., blocking all horror moviesand videos). Types of access attributes may be specified for individualchannels or multiple channels (e.g., component channels of a compositechannel, channels of the same curator, channels having the same theme,etc.).

In some embodiments, data store 150 is deployed across one or moredatacenters. A datacenter is a facility used to house a large number ofstorage devices. Data in data store 150 may be replicated across themultiple datacenters in order to provide reliability, availability, andscalability (RAS) features and/or to allow fast load times for thepresentation of content on the content hosting website. The manner ofreplication of data may be selected by a user, may be selected based onone or more replication algorithms, etc.

In embodiments of the disclosure, the internet-based content platform120 notifies end users of the types of information that are stored indata store 150, and provides the end users the opportunity to choose notto have such information collected, analyzed, and/or shared.

During operation of system 100, a user accesses internet-based contentplatform 120 via client/user device 105 over network 115. When a usernavigates the internet-based content platform 120, the internet-basedcontent platform 120 can present one or more lists of subscribablechannels. The user can navigate the internet-based content platform 120to discover content and channels through keyword searching, browsingrecommended channels, identifying other users' activity, such as byviewing channels or media items shared by others, or a combinationthereof. Users can also discover content and channels throughadvertisements presented within the internet-based content platform 120.

Once the end user identifies content they would like to consume, the enduser can take different actions depending on access restrictions placedon the content. The end user can subscribe (e.g., for free or by payinga subscriber fee) to a channel to gain access to content. The subscriberfee can be a one-time fee, or can be a recurring fee. For example, thesubscriber fees can be billed monthly, annually, or using any otherbilling periods, including a one-time pass, or a season pass. In someimplementations, the subscriber fee may vary depending on user-selectedadvertising attributes or a user-selected subscription level forspecific type(s) of content access.

To subscribe to a channel, the user can initiate a request to subscribeto the channel, such as by pressing a ‘subscribe’ button presented byapplication 110. The channel subscription subsystem 125 can receive therequest of the end user to subscribe to the channel (e.g., paid orfree). The subscription subsystem 125 can also request information fromthe end user, such as personal information (e.g., access credentials)and payment information of the end user. Once the channel subscriptionsubsystem 125 receives the information from the end user, it can createa subscription to the channel for the end user based on the end userinformation. After creating the subscription for the end user, thechannel subscription subsystem 125 can record the user subscription assubscription data 155 of data store 150. In one implementation, when theuser subscription is recorded, the channel content providing subsystem130 allows the user to immediately (e.g., in real time) consume mediaitems of the channel. The user can also immediately (e.g., in real time)view his or her subscriptions from a user home GUI of the internet-basedcontent platform 120.

To access content of a channel, the user can submit an access request tothe internet-based content platform 120, such as by activating a playbutton within the application 110. The channel content providingsubsystem 130 can provide access to the content of the channel to theend user according to the user subscription. The channel contentproviding subsystem 130 can check subscription data 155 for a usersubscription and can provide access to content accordingly. In oneimplementation, the channel content providing subsystem 130 provides theend user access to the content of the channel via the same client device105, application 110 and/or user interface that the end user used tomake the request to subscribe to the channel.

In one implementation, the channel advertisement management subsystem135 manages advertisements provided in conjunction with channels of theinternet-based content platform 120. The channel advertisementmanagement subsystem 135 can provide advertisements to the useraccording to the user subscription level. The channel advertisementmanagement subsystem 135 can present advertisements to end users whilethe end users navigate and consume content within the internet-basedcontent platform 120. In another implementation, the channel contentaccess management subsystem 140 manages different types of access tomedia items of a channel.

In one implementation, network architecture 100 can include a socialconnection platform (not shown) that may be one or more computingdevices (e.g., servers), data stores, networks, software components,and/or hardware components that may be used to allow users to connectto, share information, and/or interact with each other. The socialconnection platform may present to a user a listing (e.g., feed, stream,wall, etc.) of objects (such as posts, content items (e.g., video,images, audio, etc.), status updates, favorability indications, tags,messages, and so on) generated by other users of the social network. Thesocial connection platform may also include a content sharing aspectthat allows users to upload, view, tag, and share content, such as textcontent, video content, image content, audio content, and so on. Otherusers of the social connection platform may comment on the sharedcontent, discover new content, locate updates, share content, andotherwise interact with the provided content. In one implementation, theinternet-based content platform may be integrated with the socialconnection platform. For example, the social connection platform may usethe internet-based content platform 120 to allow users to upload and/orshare content. In another embodiment, the social connection platform maybe separate from the internet-based content platform 120.

In one implementation, network architecture 100 can include multipleintegrated platforms that can communicate with each other and permitusers to discover and consume content across multiple platforms. Forexample, network architecture 100 can include an email platform (notshown) that may be hosted by one or more computing devices (e.g.,servers), data stores, networks, software components, and/or hardwarecomponents that may be used to allow users to send and/or receiveelectronic-mail (emails) to each other. For example, a first user mayuse the email platform to send an email to a second user regarding achannel or media item of interest. The users may also attach files(e.g., video files, image files, text files, etc.) to the emailmessages. In one implementation, the email platform, and/or the socialconnection platform may also include chat functionality (e.g., a chatplatform) to allow users to chat (e.g., to exchange instant message)with each other about channels and media items of interest. In anotherimplementation, network architecture 100 includes a search platform thatmay be hosted by one or more computing devices, data stores, networks,software components, and/or hardware components that may be used toallow users to search for information and/or data. For example, thesearch platform may allow a user to search the Internet and/or othernetworks for channels, media items, topics, movies, videos, articles,blogs, websites, webpages, images, videos, etc. The search platform mayalso include a search engine.

FIG. 2 is a block diagram illustrating a channel subscription subsystem200, in accordance with some embodiments of the present disclosure. Thechannel subscription subsystem 200 may be the same as the channelsubscription subsystem 125 of FIG. 1 and may include a subscriptionrequest receiver 205, a subscription creator 210 and a media itemprovider 215. More or less components may be included in the channelsubscription subsystem 200 without loss of generality. For example, somemodules may be combined into a single module, or any modules may bedivided into two or more modules. In one implementation, one or more ofthe modules may reside on different computing devices (e.g., differentserver computers).

The channel subscription subsystem 200 is communicatively coupled to thedata store 150. For example, the channel subscription subsystem 200 maybe coupled to the data store 150 directly or via a network (e.g., vianetwork 115 as illustrated in FIG. 1).

The subscription request receiver 205 may receive a request of an enduser to subscribe to a channel (e.g., paid or free) of theinternet-based content platform 120. The request can be for a channelselected from among a list of channels (e.g., search results,recommended channels, channels shared by others, channels on a channelhome GUI, related channels, etc.) that are presented by theinternet-based content platform 120. The subscription request receiver205 can receive the request of the end user via a user interface, suchas a GUI presented by application 110 of client device 105. The user canselect a channel from a list of channels presented in the user interfaceand can subscribe to the selected channel using a user interface element(e.g., a button, a list box, a check box, etc.) in the user interface.The subscription request receiver 205 can determine subscriptioninformation including, for example, an identifier of the selectedchannel (e.g., name of the channel) and end user information (e.g.,name, password, etc.) associated with the subscription request. In oneimplementation, the subscription information further includesadvertising attributes or a subscription level that corresponds todifferent types of access to the channel, as described herein. Thesubscription request receiver 205 can also request end user information,such as payment information. Payment information can include credit cardinformation, bank information, digital currency information, digitalwallet information, electronic payment information, etc. In oneimplementation, payment information includes third party authentication.For example, when submitting payment information to subscribe to achannel curated by a company that publishes a motorcycle racingmagazine, the user can submit credentials that demonstrate the user isan existing subscriber of the motorcycle racing magazine.

The subscription creator 210 can create a subscription to the channel(e.g., free or paid) for the end user based on the subscriptioninformation. The subscription creator 210 can create a user subscriptionrecord and can record it as subscription data 155 in the data store 150.If the end user later modifies any of the subscription information(e.g., unsubscribes to the channel or selects a different advertisingattribute or type of access), the subscription creator 210 modifies thesubscription information associated with the user in the data store 150.

The media item provider 215 can provide access to the content of thechannel (e.g., free or paid) to the end user based on the usersubscription information in the subscription data 155 and channel data160. As discussed above, the subscription data 155 includes details onuser subscriptions to different channel, and the channel data 160includes details on individual channels (e.g., a list of media items ineach channel, whether individual media items in the channel are free orpaid, etc.). The media item provider 215 provides access to the contentof the channel at substantially the same time as when the subscriptioncreator 210 creates the subscription for the end user. As mentionedabove, a user can subscribe to a channel and can then quickly beginconsuming content the channel. In one implementation, the media itemprovider 215 can provide access to the content of the channel via thesame device, application or user interface that the user used forsubscribing to the channel, thereby enabling convenient and fast accessto content of the channel.

In one implementation, when providing access to content of the channel,the media item provider 215 can add media items of the channel to a userfeed generated for the end user. The media item provider 215 can presentthe user feed to the end user, an example of which is illustrated inFIG. 15A. In another implementation, providing access can include addinga subscribed channel to a user subscription list, which can be a list ofchannels to which a user has subscribed. The user subscription list canbe presented to users on any GUI within the internet-based contentplatform 120, such as within user lists and filter 1515 as describedherein, thereby enabling users to quickly access their subscribedchannels from any GUI. In a further implementation, media item provider215 can also provide access to the channel via search results presentedto an end user in response to a search query, an example of which isfurther described in conjunction with FIG. 16. The user can select asearch result to immediately begin consuming content of the channel. Themedia item provider 215 can also provide access to the content of thepaid channel to the end user via an additional user interface of theinternet-based content platform, such as a browse channels GUI thatenables users to browse for channels of interest as further described inconjunction with FIG. 17, a channel home GUI that enables users tobrowse a channel for media items of interest as further described inconjunction with FIGS. 19 and 25, a composite channel home GUI thatenables users to browse a composite channel for component channels andmedia items of interest as further described in conjunction with FIGS.21 and 26, a component channel GUI, or via other mechanisms includingadvertisements 1525, as further described herein.

In another implementation, the channel subscription subsystem handlesunsubscribe requests. In particular, the subscription request receiver205 can receive a request to unsubscribe the user from a channel and canupdate the user information in the subscription data 155. When a user isunsubscribed from a channel, the media item provider 215 can prevent theend user from accessing content of the channel. When the channel is apaid channel that includes both free and paid media items, the mediaitem provider 215 can prevent the end user from accessing the paid mediaitems of the paid channel while allowing the end user to access freemedia items.

FIG. 3 is a block diagram illustrating a channel content providingsubsystem 300, in accordance with some embodiments of the presentdisclosure. The channel content providing subsystem 300 may be the sameas the channel subscription subsystem 130 of FIG. 1 and may include achannel list provider 305, channel selection receiver 310, a media itemrequest receiver 315, a media item request validator 320 and a mediaitem provider 325. More or less components may be included in thechannel content providing subsystem 300 without loss of generality. Forexample, some modules may be combined into a single module, or any ofthe modules may be divided into two or more modules. In oneimplementation, one or more of the modules may reside on differentcomputing devices (e.g., different server computers).

The channel content providing subsystem 300 is communicatively coupledto the data store 150. For example, the channel content providingsubsystem 300 may be coupled to the data store 150 directly or via anetwork (e.g., via network 115 as illustrated in FIG. 1).

The channel list provider 305 can provide a list of channels to an enduser of the internet-based content platform. The list of channels can begenerated using channel data 160 from data store 150 and can includechannels the user has not yet subscribed to as well channels to whichthe user has subscribed. The list can be provided in a user interfacethat can include one or more channels. When the list includes more thanone channel, the channels can be presented in groups or categories, asdescribed in further detail in conjunction with FIG. 17. The list ofchannels can include free or paid channels, or both. The list ofchannels can be provided in response to user activity, such as auser-initiated search query, user navigation through the internet-basedcontent platform, such as when a user navigates through a browsechannels GUI, as further described in conjunction with FIG. 17, or whena user views activity of others, etc. The list of channels can also beprovided to the end user as an advertisement, such as advertisement 1525(e.g., as a list of recommended channels or channels that are, relatedsubscribed channels, etc.), as described herein. Further, the list ofchannels can be provided in response to social activity, which caninclude when users share lists of channels with others via a message,email, text, wall post, etc. In another example, a user can activate a“like” button associated with a channel or a video and the user's socialcontacts can see that the user liked the channel or video. The list ofchannels can include multiple channels of different channel curators.

The channel selection receiver 310 receives a selection of a channel(e.g., free or paid) from the list of channels from the end user. A paidchannel can include one or more paid media items and one or more freemedia item. A paid media item can be a media item that the user canaccess only after subscribing to a paid channel. A free media item canbe a media item that the user can consume with or without subscribing tothe paid channel. When the user selects a channel from the list ofchannels, media items of the channel can be presented to the user, suchas via the user interface and the user can select a media item of thechannel to consume (e.g., to watch a video).

The media item request validator 320 can handle user access to mediaitems. The media item request validator 320 can determine whether theselected media item is a free item or a paid item. When the selectedmedia item is a paid item, media item request validator 320 can requestsubscription information of the end user. In one implementation, requestsubscription information of the end user includes requesting accesscredentials of the end user. After the media item request validator 320receives the access credentials from the end user, the media itemrequest validator 320 can use the access credentials to determinewhether the end user has previously subscribed to the channel. When theuser has previously subscribed to the channel, the media item provider325 provides the paid media item to the user. When the user has notpreviously subscribed to the channel, the media item provider 325 deniesthe user access to the paid media item.

In one implementation, when determining whether the end user haspreviously subscribed to the channel, the media item request validator320 determines whether payment information of the end user has beenreceived by the internet-based content platform. When the user has notpreviously subscribed to the channel, the media item request validator320 can authorize providing limited access to the paid item or canencourage the user to subscribe to the channel, such as by presenting auser interface with information on how the user can subscribe to thechannel. In one implementation, prior to or in conjunction withrequesting the subscription information of the end user, the media itemrequest validator 320 can authorize providing limited access to the paiditem. Limited access to the paid item can include, for example, apreview or the first thirty seconds of a video or movie. Limited accesscan further include permitting the user to watch a predetermined numberof videos of a paid channel. Once the user has watched the predeterminednumber of videos, the media item request validator 320 can inform theuser that they need to pay a subscriber fee to watch more videos. Whenthe selected media item is a free item, media item provider 325 canprovide the free media item to the end user. The free item can be apreview of a paid media item that can be used to encourage a user tosubscribe to the paid channel. Preview can refer to a shortened versionof a media item such as a portion of the media item. For example, apreview of a video can be a trailer (a combination of some of thescenes) of the video, a predefined duration of the video, etc. Inanother implementation, the free media item is not a preview of any paiditems of the channel but an independent or separate media item (e.g., acomplete movie or a complete video clip) that can have its own preview.

In another implementation, the channel content providing subsystem 300receives a request of a channel curator of a paid channel to remove anexisting media item from the paid channel. In response to this request,the channel content providing subsystem 300 can remove the existingmedia item from the paid channel in real time.

FIG. 4 is a block diagram illustrating a channel advertisementmanagement subsystem 400, in accordance with some embodiments of thepresent disclosure. The channel advertisement management subsystem 400may be the same as the channel advertisement management subsystem 135 ofFIG. 1 and may include a channel advertisements subscription provider405, media item request receiver 410, a user subscription validator 415and a media item provider 420. More or less components may be includedin the channel advertisement management subsystem 400 without loss ofgenerality. For example, some modules may be combined into a singlemodule, or any of the modules may be divided into two or more modules.In one implementation, one or more of the modules may reside ondifferent computing devices (e.g., different server computers).

The channel advertisement management subsystem 400 is communicativelycoupled to the data store 150. For example, the channel advertisementmanagement subsystem 400 may be coupled to the data store 150 directlyor via a network (e.g., via network 115 as illustrated in FIG. 1).

The channel advertisements subscription provider 405 can enable a userto subscribe to a channel (e.g., paid or free). The channeladvertisements subscription provider 405 can present, via an interface,advertising attributes of the channel, such as a subscriber set ofadvertising attributes. The advertising attributes can be retrieved fromadvertising attributes data 165 in data store 150 and then presented tothe user. Advertising attributes can be created or set by a channelcurator when the curator creates or defines a channel. The channelcurator can also modify advertising attributes for a channel after thechannel has been created or defined.

In one implementation, when subscribing to a channel, the user canselect an advertising attribute from a subscriber set of advertisingattributes of the channel. The subscriber set of advertising attributescan include, for example, an advertising attribute that decreases anumber of advertisements presented to the user when the user consumesmedia items of the channel. Other examples of subscriber advertisingattributes include a decrease of an aggregate length of timeadvertisements are presented to the user when the user consumes mediaitems of the channel, a presentation of advertisements of a specificcategory, a reduction of a number of advertisements from a category, afrequency for presenting an advertisement, a duration for presenting anadvertisement, or an option to skip an advertisement presentation withinthe channel, etc. When the channel is a paid channel, the channeladvertisements subscription provider 405 can provide a list ofsubscriber fees that correspond to the subscriber set of advertisingattributes. The subscriber set of advertisement attributes can varydepending on the subscriber fee for the paid channel. For example, anadvertisement attribute that removes all advertisements from a channelcan correspond to a higher subscriber fee than an advertisementattribute that reduces the number of advertisements presented per hourfrom six to five.

When subscribing to the channel, the user can select one or more of theadvertising attributes. The channel advertisements subscription provider405 can receive a subscription request of the user to subscribe to thechannel that includes one or more advertising attributes selected fromthe subscriber set of advertising attributes. Using the subscriber setof advertising attributes selected by the user, the channeladvertisements subscription provider 405 can determine a subscriber feefrom the list of subscriber fees. The channel advertisementssubscription provider 405 can request payment information of the user.Upon receiving a confirmation of a payment of the determined subscriberfee by the end user, the channel advertisements subscription provider405 can create a subscription to the channel for the end user. In oneimplementation, the advertisement attribute is predetermined by thechannel curator and is not selectable by the end user. In thisimplementation, the only subscription options afforded to the user arewhether to subscribe to or unsubscribe from the channel, and the usercannot specify any advertisement attributes. Once the user selects anadvertising attribute, the channel advertisements subscription provider405 can cause the selected advertising attribute to be stored insubscription data 155 in data store 150.

The media item request receiver 410 can receive a user request for oneof a plurality of media items of a channel. The user can request toconsume the media item from anywhere, including from within theinternet-based content platform, or from outside of the internet-basedcontent platform. The user subscription validator 415 can determinewhether the user is subscribed to the channel. To determine channelsubscriptions of the user, the user subscription validator 415 canobtain subscription information associated with the user. The usersubscription validator 415 can determine subscription information of theuser based on subscription data 155 in storage 150. The usersubscription validator 415 can inform the media item provider 420whether the user is subscribed to the channel.

The media item provider 420 can provide access to media items of thechannel based on the user subscription data 155. When the user issubscribed to the channel, the media item provider 420 can present therequested media item according to the subscriber set of advertisingattributes, which can include removing or reducing advertisementsprovided in conjunction with playback of media items that are part ofthe channel. When the user is not subscribed to the channel, the mediaitem provider 420 can present the requested media item according to anon-subscriber set of advertising attributes, which can include a fullcomplement of advertisements, non-skippable advertisements,advertisements that can be skipped after a longer viewing duration thanfor subscribers of the channel, etc.

In one implementation, the selected advertising attributes can identifya predefined number of media items that the media item provider 420 canprovide to the end user. When the user consumes the predefined number ofmedia items of the channel, the advertising attribute can change. In anexample, when the user consumes the predefined number of media items ofthe channel, the media item provider 420 can prevent advertisements frombeing presented to the end user. In another example, when the userconsumes the predefined number of media items of the channel, the mediaitem provider 420 can either increase or decrease the number ofadvertisements presented to the end user. For example, when a userconsumes a predefined number of media items of a paid channel, the mediaitem provider 420 can increase the number of advertisements presented tothe user to encourage the user to change their subscription status tothe channel (e.g., subscribe to the channel, pay a subscriber fee tosubscribe to the channel, pay a greater subscriber fee for the channel,etc.). Similarly, when a user consumes a predefined number of mediaitems of a paid or free channel, the media item provider 420 candecrease the number of advertisements presented to the user to rewardactive users with less advertisements.

FIG. 5 is a block diagram illustrating a channel content accessmanagement subsystem 500, in accordance with some embodiments of thepresent disclosure. The channel content access management subsystem 500may be the same as the channel content access management subsystem 140of FIG. 1 and may include a channel access subscription provider 505,subscription level selection receiver 510, a subscription level recorder515 and a media item provider 520. More or less components may beincluded in the channel content access management subsystem 500 withoutloss of generality. For example, some modules may be combined into asingle module, or any of the modules may be divided into two or moremodules. In one implementation, one or more of the modules may reside ondifferent computing devices (e.g., different server computers).

The channel content access management subsystem 500 is communicativelycoupled to the data store 150. For example, the channel content accessmanagement subsystem 500 may be coupled to the data store 150 directlyor via a network (e.g., via network 115 as illustrated in FIG. 1).

The channel access subscription provider 505 can permit a user to selecta subscription level for a channel when subscribing to the channel. Thechannel access subscription provider 505 can use access type data 170 tocreate a list of types of access to media items of the channel and oneor more subscription levels associated with different subscription feesfor different types of access to the channel, and present this list tothe user. The access type data can be defined or set by a channelcurator when creating or defining a channel. For example, the channelcurator can set an access type that permits users to pay for offlineaccess when a user subscribes to the channel. The type of access to themedia items of the channel affects end user consumption of the mediaitems. One type of access can be a quality characteristic (e.g., a videoresolution or display size) when consuming media items of the channel.For example, a quality characteristic type of access can be an option toview all media items of the channel in 1080p resolution or higher.Another type of access can include allowing access to media items of thechannel from multiple user devices. For example, access to the contentof the channel on be allowed from the user's personal computer, tabletand smartphone. A further type of access can include offline access tomedia items of the channel. For example, when a user elects an offlineaccess type of access, the user can have access to media items of achannel when the user device is not connected to the internet. Othertypes of access can include adding subtitles to or changing a languageof one or more media items in the channel. For example, a user can payfor access to a movie dubbed in the Mongolian language or with Mongoliansubtitles. Another type of access can include allowing a user to blockspecific media items or channels based one some criteria, such as on anindividual or categorical basis. For example, a user can choose to havemovies and shows with an “R” rating be blocked or a user can choose tohave block specific shows or movies to be blocked.

The subscription level selection receiver 510 can receive a selection ofone of the subscription levels for the channel. In one implementation,receiving the selection of one of the plurality of subscription levelsfor the channel can include receiving a request of the end user tosubscribe to the channel.

The subscription level recorder 515 can record the selected subscriptionlevel of the end user for the channel. The selected subscription levelcan be recorded and stored as part of a user's subscription data 155 indata store 150.

The media item provider 520 can provide a type of access to theplurality of media items of the channel for the end user according tothe recorded subscription level of the end user for the channel. Whenproviding access to content of the channel to the end user, the mediaitem provider 520 can reference information stored in the subscriptiondata 155, channel data 160 and access type data 170. For example, when auser requests access to a media item at a high resolution, media itemprovider 520 can provide the media item according to the user'ssubscriptions, such as according a subscription level that permitsaccessing the media item at a high resolution. The media item provider520 can also provide the media item according to channel data and accesstype data that are defined by an entity other than the user, such as thechannel curator, the internet-based content platform 120, or both. Forexample, a channel curator may set the channel to only be played in1080p resolution. The internet-based content platform 120 may includechannel data that decreases the playback resolution when a detectedinternet connection cannot support high resolution. In a situation thatcombines these two examples, the preference of the channel curator toplay only in 1080p resolution potentially conflicts with theinternet-based content platform 120 preference to reduce resolution forlimited bandwidth situations. When such a conflict occurs, playback of amedia item can be paused and a message can be displayed to the user thatthere is insufficient bandwidth to play the media item at 1080presolution. Alternatively, the internet-based content platform 120preference can override the channel curator's preference and the mediaitem can be played back to the user. The internet-based content platform120 can also present a message to the user that the media item is beingpresented at less than 1080p resolution and that the user shouldincrease bandwidth to view the media item in 1080p.

In one implementation, when the selected subscription level pertains toa quality characteristic, providing the type of access to the mediaitems of the channel includes ensuring that the media items arepresented to the end user according to the selected qualitycharacteristic. In another implementation, when the selectedsubscription level unlocks access to media items of the channel on oneor more additional user devices, providing the type of access to mediaitems of the channel includes providing the media items for presentationon any additional user device upon receiving a user request. In afurther implementation, when the selected subscription level unlocksoffline access to media items of the channel, providing the type ofaccess to media items of the channel includes causing at least one ofthe media items of the channel to be stored on a user device for futureoffline access. In yet a further implementation, when the selectedsubscription level pertains to adding subtitles to one or more mediaitems in the channel, providing the type of access to media items of thechannel includes providing subtitles with one or more media items in thechannel. In yet another implementation, when the selected subscriptionlevel pertains to changing a language of at least one media item of thechannel, providing the type of access to media items of the channelincludes changing the language of one or more media items in thechannel.

When the user attempts to enable a type of access that is not part ofthe user's subscription data, the media item provider 520 can stillpresent media items according to the requested type of access. Forexample, even if a user has not subscribed for access to videos in1080p, the media item provider 520 can still present videos to the userin 1080p resolution. In other instances, the media item provider 520 canblock the requested type of access and present a message to the userinforming them that the requested type of access is not available underthe user's current subscription. The message can also includeinstructions for how the user can add the requested type of access totheir subscription data. For example, when the user requests to access avideo from a user device not covered by the user subscription, the mediaitem provider 520 can block access from that user device and inform theuser how to unlock access for that user device. Similarly, when a userattempts to enable offline video access, the media item provider 520 caninform the user how to unlock this type of access. In anotherimplementation, the media item provider 520 can provide the type ofaccess not covered by the user subscription on a limited basis, such ason an as-available basis or as a preview or upsell scheme. For example,the media item provider 520 can provide videos in 1080p resolution aslong as the user's internet connection is sufficient. The media itemprovider 520 can also provide a predetermined number of videos in 1080p,then switch to a lower resolution while informing the user on how tounlock 1080p resolution for future video playback. Similarly, the mediaitem provider 520 can allow a user to select a predetermined number ofvideos for offline access. The media item provider 520 can also permitthe user to watch a video where a portion of the video is dubbed in arequested language or has subtitles in a requested language. The mediaitem provider 520 can prompt the user with information on how to unlockthe different language or subtitles for the entire video.

FIG. 6 is a block diagram illustrating a composite channel managementsubsystem 600, in accordance with some embodiments of the presentdisclosure. The composite channel management subsystem 600 may be thesame as the composite channel management subsystem 145 of FIG. 1 and mayinclude a composite channel presenter 605, composite channeladvertisement manager 610 and a composite channel content access manager615. More or less components may be included in the composite channelmanagement subsystem 600 without loss of generality. For example, someof the modules may be combined into a single module, or any of themodules may be divided into two or more modules. In one implementation,one or more of the modules may reside on different computing devices(e.g., different server computers).

The composite channel management subsystem 600 is communicativelycoupled to the data store 150. For example, the composite channelmanagement subsystem 600 may be coupled to the data store 150 directlyor via a network (e.g., via network 115 as illustrated in FIG. 1).

The composite channel presenter 605 can present one or more compositechannels using channel data 160 and manage subscriptions to thecomposite channels. A composite channel can be created by a channelcurator who selects one or more component channels and/or one or moremedia items to include within a composite channel. A component channelrefers to an individual channel that is part of a package represented bya composite channel. The composite channel may include componentchannels having different content types. For example, a user interestedin a musician may want to subscribe to a channel that includes themusician's music videos, the musician's music, a blog about themusician, a newsletter about the musician, tweets of the musician,social network posts by or about the musician, etc. The compositechannel presenter 605 can operate in a similar manner as channelsubscription subsystem 200 of FIG. 2. The composite channel presenter605 can receive requests to subscribe to composite channels, create usersubscriptions and provide media items of the composite channelsaccording to the user subscriptions. In one implementation, when thecomposite channel presenter 605 creates a user subscription to thecomposite channel, it can automatically subscribe the user to thecomponent channels of the composite channel. In another implementation,the composite channel presenter 605 does not automatically subscribe theuser to the component channels when creating a user subscription to thecomposite channel. Instead, the composite channel presenter 605 canpresent a user interface that prompts the user to select one or morecomponent channels to subscribe to as part of a subscription flow, asfurther described in conjunction with FIG. 24D. For example, when thecomposite channel includes six component channels, the user can choosewhether to subscribe to each of the six component channels for noadditional subscriber fee.

The composite channel presenter 605 can also operate in a similar manneras channel content providing subsystem 300. The composite channelpresenter 605 can present a list of composite channels within theinternet-based content platform, receive selections to consume mediaitems of the composite channels, validate media items and users, andprovide media items of the composite channels according to the usersubscriptions.

The composite channel advertisement manager 610 can direct advertisingfor component channels and media items of the composite channel. Thecomposite channel advertisement manager 610 can operate in a similarmanner as the channel advertisement management subsystem 400 of FIG. 4.In one implementation, all component channels and media items of acomposite channel can have the same advertising attributes. In otherimplementation, when the composite channel includes two componentchannels, the two component channels can have different advertisementattributes. For example, one channel can be a premium movie channel thatusers are likely to watch. Since viewership is likely to be high, thischannel can have a full complement of advertisements. A second channel,for example, can include movies that are not as likely to draw in users.In an effort to attract users, the second channel can have fewer or evenno advertisements. Similarly, when the composite channel includes acombination of one or more component channels and standalone mediaitems, the component channels can have different advertisementattributes than each other and can also have different advertisementattributes than the standalone media items. In one implementation,subscriber fees can vary for different subscription levels. For example,a subscription level that removes all advertisements from all componentchannels and media items of a composite channel can have a differentsubscriber fee than for a subscription level that only reduces thenumber of advertisements or removes all advertisements of a subset ofcomponent channels. Similarly, a subscriber fee for some subscriptionlevels that unlock certain types of access can be different than forsubscription levels that unlock other types of access. For example, asubscriber level that provides a user with offline access to media itemsof the composite channel can be different than a subscriber fee topresent one or more media items in a different language.

The composite channel content access manager 615 can handle access tocomponent channels and media items of the composite channel. Thecomposite channel content access manager 615 can operate in a similarmanner as the channel content access management subsystem 500 describedin conjunction with FIG. 5. The composite channel content access manager615 can facilitate composite channel subscriptions and can permit theuser to select a subscription level when subscribing to a free or paidcomposite channel. In one implementation, all component channels andmedia items of a composite channel can have the same type of access. Inother implementations, when the composite channel includes two componentchannels, the two component channels can have different types of access.For example, one channel may be accessed offline, while another may not.The subscription level can be associated with different subscriptionfees for different types of access to the composite channel. Offeringdifferent subscription levels provides users with greater flexibility toselect content and channel characteristics that better match theirpersonal needs.

FIG. 7-14 are flow diagrams illustrating methods for performing variousoperations, in accordance with some embodiments of the presentdisclosure, including creating subscriptions and providing access tocontent of a channel. The methods may be performed by processing logicthat comprises hardware (e.g., circuitry, dedicated logic, programmablelogic, microcode, etc.), software (e.g., instructions run on a processorto perform hardware simulation), or a combination thereof. Processinglogic can control or interact with one or more devices, applications oruser interfaces, or a combination thereof, to perform operationsdescribed herein. When presenting, receiving or requesting informationfrom a user, processing logic can cause the one or more devices,applications or user interfaces to present information to the user andto receive information from the user.

For simplicity of explanation, the methods of FIGS. 7-14 are depictedand described as a series of operations. However, acts in accordancewith this disclosure can occur in various orders and/or concurrently andwith other operations not presented and described herein. Furthermore,not all illustrated operations may be required to implement the methodsin accordance with the disclosed subject matter. In addition, thoseskilled in the art will understand and appreciate that the methods couldalternatively be represented as a series of interrelated states via astate diagram or events.

FIG. 7 is a flow diagram illustrating a method 700 of subscribing to achannel, in accordance with some embodiments of the present disclosure.In one implementation, method 700 may be performed by a channelsubscription subsystem, as illustrated in FIG. 2.

Referring to FIG. 7, the method 700 begins at block 705 where processinglogic receives a request of an end user to subscribe to a paid channelof an internet-based content platform. The paid channel can be one ofmultiple channels of the internet-based content platform. The paidchannel can also have dynamically changed content, as described herein.In one implementation, the subscription request is received via a userinterface provided by an internet-based content platform and presentedvia a web browser or a mobile app. The subscription request can beissued when the end user activates or selects (e.g., clicks, touchesswipes, or otherwise interacts with through a gesture, voice command,biometric input, retinal input, etc.) a UI element (e.g., a button, acheck box, etc.) in the UI. The user selection of the user interfaceelement can be alternatively received when a user clicks on a link(e.g., URL), a graphic representation of the subscription (e.g., image),the like. In one embodiment, the user interface includes a list ofchannels and the user can subscribe to a channel upon selecting achannel from the list. An example user interface that includes a list ofchannels is discussed herein in conjunction with FIGS. 16-21 and 25-27.

At block 710, processing logic requests end user information that caninclude payment information of the end user. In one implementation,processing logic receives the end user information via a user interface,which can be the same user interface used to receive the subscriptionrequest of the end user at block 705.

At block 715, processing logic receives the end user information. Atblock 720, processing logic creates a subscription to the paid channelfor the end user based on the end user information.

At block 725, processing logic provides access to the content of thepaid channel to the end user. In one implementation, processing logicprovides access to the content of the paid channel to the end user via auser interface, which can be the same user interface as the one used atblock 705 and/or block 710. This user interface can include a series ofscreens that appear in real time (immediately after receiving acorresponding input from the end user) one after another (blocks 705,710 and 725) on the user device, without requiring the end user tolaunch another application (e.g., another mobile app) and/or anotherinstance of the current application (e.g., another instance or tab ofthe web browser) on the user device. As a result, access to the contentof the paid channel is provided to the end user at substantially thesame time (with no noticeable delay) as the creation of the subscriptionto the paid channel for the end user. In some implementations, a curatorof the paid channel can change the content of the paid channel at anyitem by adding a new media item and/or removing an existing media item,and the end user is immediately (without any noticeable delay) providedwith access to the added media item and/or is immediately denied accessto the removed media item.

Some examples of methods for providing access to content of a paidchannel will be discussed in more detail below in conjunction with FIGS.8, 9 and 10.

FIG. 8 is a flow diagram illustrating a method 800 for providing accessto media items of a channel in a user feed, in accordance with someembodiments of the present disclosure. Method 800 may be performed by achannel content providing subsystem 300, as illustrated in FIG. 3, or bya media item provider 215, as illustrated in FIG. 2.

Referring to FIG. 8, the method 800 begins with processing logic addingmedia items of the paid channel to a user feed generated for the enduser (block 805). Processing logic can add both free media items andpaid media items to the same user feed. The user feed may include a listof media items customized for the end user. For example, the user feedmay include a list of videos selected for the end user (e.g. based onchannels subscribed by the end user or based on videos recommended tothe end user). Upon receiving a subscription request for a paid channelfrom the end user, media items of the paid channel are added to the userfeed.

At block 810, processing logic presents the user feed to the end user,which can include presenting both a free media item and a paid mediaitem within the same user feed. In one implementation, the free mediaitem is available via the user feed after the user has subscribed to thechannel (e.g., free or paid). In one implementation, processing logicpresents the user feed to the end user via the same user interfaceand/or the same application that was used to receive the subscriptionrequest of the end user at block 705 of FIG. 7 and/or to request the enduser information at block 710 of FIG. 7. The user feed with media itemsfrom the newly-subscribed paid channel can be presented to the user atsubstantially the same time (without any noticeable delay) as thecreation of the subscription to the paid channel for the end user. Theend user can select the media item from the user feed and immediatelybegin consuming the selected media item (e.g., begin playing theselected video).

If processing logic receives a request to unsubscribe the end user fromthe paid channel, processing logic prevents media items of the channel(e.g., free or paid) from appearing in the user feed.

FIG. 9 is a flow diagram illustrating a method 900 for providing accessto media items of a paid channel using a user subscription list, inaccordance with some embodiments of the present disclosure. Method 800may be performed by a channel content providing subsystem 300, asillustrated in FIG. 3, or by a media item provider 215, as illustratedin FIG. 2.

Referring to FIG. 9, the method 900 begins with processing logic addingthe paid channel to a user subscription list of the end user (block905). The user subscription list can include a list of channels to whicha user has subscribed. The paid channel can be added to the subscriptionlist of the end user upon receiving the subscription request for thepaid channel from the user.

At block 910, processing logic presents the user subscription list tothe end user. The user subscription list can be presented via the sameuser interface and/or the same application that was used to receive thesubscription request of the end user at block 705 of FIG. 7 and/or torequest the end user information at block 710 of FIG. 7.

At block 915, processing logic receives a selection of the paid channelfrom the user subscription list. At block 920, processing logic presentsmedia items of the paid channel to the end user. Processing logic canpresent media items of the paid channel to the end user via the sameuser interface and/or the same application that was used to receive thesubscription request of the end user at block 705 of FIG. 7 and/or torequest the end user information at block 710 of FIG. 7 and/or topresent the user subscription list at block 910. The media items of thenewly-subscribed paid channel can be presented to the end user atsubstantially the same time (without any noticeable delay) as thecreation of the subscription to the paid channel for the end user. Theend user can select one of the presented media items and immediatelybegin consuming the selected media item (e.g., begin playing theselected video).

FIG. 10 is a flow diagram illustrating a method 1000 for providingaccess to a paid channel or media items of a paid channel in a searchresult, in accordance with some embodiments of the present disclosure.Method 1000 may be performed by a channel content providing subsystem300, as illustrated in FIG. 3, or by a media item provider, asillustrated in FIG. 2.

Referring to FIG. 10, the method 1000 begins with processing logicreceiving a search query from a user (block 1005). The search query canbe in any form, including text, voice, speech, gesture, retinal,biometric, etc. The search query can be keywords input in a search fieldof a GUI presented, for example, by a web browser or a mobile app.

At block 1010, processing logic presents a search result that includesat least one media item of a paid channel in response to the searchquery. The search result can be in any format, including text, audio,video, or a combination thereof. An example user interface that includesa search result with at least one media item of a paid channel isdiscussed in conjunction with FIG. 16.

At block 1015, processing logic receives a selection of one of the mediaitems of the paid channel. Processing logic can receive the selectionvia the same user interface and/or the same application that was used toreceive the search query at block 1005 and/or to present the searchresult at block 1010.

At block 1020, processing logic receives a request of an end user tosubscribe to a channel (e.g., free or paid) of an internet-based contentplatform. The channel can be one of multiple channels of theinternet-based content platform. The channel can also have dynamicallychanged content, as described herein. Processing logic can receive thesubscription request via the same user interface and/or the sameapplication that was used to receive the search query at block 1005and/or to present the search result at block 1010, and/or to receive theselection of a media item at block 1015.

At block 1025, processing logic obtains subscription information thatcan include end user information and/or payment information of the enduser. Processing logic can obtain the end user information via the sameuser interface and/or the same application that was used to receive thesearch query at block 1005 and/or to present the search result at block1010, and/or to receive the selection of a media item at block 1015,and/or to receive a subscription request of the end user at block 1020.

At block 1030, processing logic creates a subscription to the paidchannel for the end user based on the subscription information.

At block 1035, processing logic plays the selected media item of thepaid channel to the end user via the same user interface and/or the sameapplication that was used to receive the search query at block 1005and/or to present the search result at block 1010, and/or to receive theselection of a media item at block 1015, and/or to receive asubscription request of the end user at block 1020, and/or to obtainsubscription information at block 1025, and/or to create a subscriptionto the paid channel at block 1030. The media items of thenewly-subscribed paid channel can be presented to the end user atsubstantially the same time (without any noticeable delay) as thecreation of the subscription to the paid channel for the end user. Theend user can select one of the presented media items and immediatelybegin consuming the selected media item (e.g., begin playing theselected video).

FIG. 11 is a flow diagram illustrating a method 1100 for providingaccess to media items in an internet-based content platform based on auser subscription, in accordance with some embodiments of the presentdisclosure. In one implementation, method 1100 may be performed by achannel content providing subsystem, as illustrated in FIG. 3.

Referring to FIG. 11, the method 1100 begins at block 1105 whereprocessing logic provides a list of channels to an end user of theinternet-based content platform (e.g., via a user interface rendered bya web browser or a mobile app). The list of channels can be a list ofsubscribable channels, any of which can be a paid channel. The paidchannel can include at least one paid media item and at least one freemedia item.

At block 1110, processing logic receives a selection of a paid channelfrom the list of channels from the end user. In one implementation,processing logic skips block 1110 and proceeds to block 1115 withoutreceiving a selection of the paid channel from the list of channels.

At block 1115, processing logic receives a selection of a media item ofthe paid channel via the user interface.

At block 1120, processing logic determines whether the selected mediaitem is a free item or a paid item. Processing logic can consult a datastore, such as data store 150, to determine this information.

When the media item is a free media item, processing logic providesaccess to the free media item to the end user at block 1125, withoutrequiring any subscription information from the end user.

If the media item is a paid media item, processing logic requestssubscription information of the end user. The subscription informationcan include access credentials of the end user, as described herein. Inone implementation, requesting subscription information of the end userincludes requesting access credentials of the end user. Depending onwhether the end user provides valid subscription information (usercredentials that can be used to verify that the payment information ofthe end user has been received by the internet-based content platform),processing logic determines whether the user is subscribed to the paidchannel at block 1135.

If the user is subscribed to the paid channel, processing logic providesaccess to the paid media item to the end user at block 1125, withoutrequiring any other subscription information from the end user. If theuser has not subscribed to the paid channel, processing logic requestspayment information of the end user at block 1140. When processing logicdetermines that payment has been received, processing logic providesaccess to paid media item to the end user at block 1125.

If processing logic determines that payment has not been received atblock 1145, processing logic can prevent access to the media item atblock 1150. Alternatively, when processing logic determines that paymenthas not been received at block 1145, processing logic can providelimited or restricted access to the paid media item at block 1155.

In one implementation, prior to requesting the subscription informationof the end user, processing provides limited access to the paid mediaitem, as described herein.

FIG. 12A is a flow diagram illustrating a method 1200 for permitting anend user to select an advertising attribute when subscribing to achannel, in accordance with some embodiments of the present disclosure.In one implementation, method 1200 may be performed by a channeladvertisement management subsystem, as illustrated in FIG. 4.

Referring to FIG. 12A, the method 1200 begins at block 1205 whereprocessing logic presents a subscriber set of advertising attributes anda list of subscriber fees that correspond to the subscriber set ofadvertising attributes to an end user. The subscriber set of advertisingattributes can relate to how advertisements are presented when the enduser consumes media items of the channel, as described herein.Processing logic can obtain the subscriber set of advertising attributesand list of subscriber fees from a data store, such as by accessingadvertising attributes data 165 of data store 150. Processing logic canpresent the subscriber set of advertising attributes and the list ofsubscriber fees via a user interface. The subscriber fee can be anyamount, including zero or a negative amount (e.g., a rebate or credit tothe user), and can be set by a channel curator.

At block 1210, processing logic receives a subscription request of theuser to subscribe to the channel. The subscription request can includeone or more advertising attributes selected from the subscriber set ofadvertising attributes.

At block 1215, processing logic determines a subscriber fee from thelist of subscriber fees based on the selected advertising attributes. Todetermine the subscriber fee, processing logic can query a data store150 for information, such as advertising attributes data 165 of datastore 150. Processing logic can also query a user record to determinewhether the user has any fee reductions that could reduce the amount ofthe subscriber fee.

At block 1220, processing logic requests the subscriber fee from the enduser. Upon receiving a notification or confirmation of a payment of thedetermined subscriber fee at block 1225, processing logic proceeds toblock 1230 and creates a subscription to the channel for the end user,where the subscription specifies the advertising attribute(s) selectedby the end user. When creating the subscription, processing logic cancreate a new subscription record for a new user or can add thesubscription to an existing subscription record of the end user. Afterblock 1230, the method 1200 ends.

FIG. 12B is a flow diagram illustrating a method 1250 for presentingmedia items of a channel to an end user based on advertising attributesselected for the channel by the end user, in accordance with oneembodiment of the present disclosure. In one implementation, method 1250may be performed by a channel advertisement management subsystem, asillustrated in FIG. 4.

Referring to FIG. 12B, the method 1250 begins at block 1255 whereprocessing logic receives a user request to consume a media item of achannel.

At block 1260, processing logic determines whether the user issubscribed to the channel. Processing logic can query a data store, suchas data store 150 to identify if a subscription exists for the user. Ifthe user is subscribed to the channel, processing logic proceeds toblock 1265 and determines one or more advertising attributes thatcorrespond to the user subscription. Processing logic can query a datastore, such as data store 150, when determining which advertisingattributes correspond to the user subscription. The advertisingattributes can be selected by a user, a channel curator, orautomatically by a computer system.

Once the advertising attributes have been determined for the subscribeduser, at block 1270 processing logic presents the requested media itemaccording to a subscriber set of advertising attributes. After block1270, the method 1250 ends.

If the user is not a subscriber of the channel, processing logicprevents access to the media item by the user. Alternatively, in theillustrated embodiment, processing logic can present at block 1275, therequested media item according to a non-subscriber set of advertisingattributes, which can represent a predefined set of advertisingattributes available to non-subscribers (e.g., to consume a free mediaitem of the paid channel). After block 1275, the method 1250 ends.

FIG. 13 is a flow diagram illustrating a method 1300 for permitting anend user to select one or more subscription levels when subscribing to achannel, in accordance with some embodiments of the present disclosure.In one implementation, method 1300 may be performed by a channel contentaccess management subsystem, as illustrated in FIG. 5.

Referring to FIG. 13, the method 1300 begins at block 1305 whereprocessing logic presents a channel and a list of different types ofaccess to the channel or to media items of the channel. The type ofaccess to the media items can affect end user consumption of one or moreof the media items of the channel. Processing logic can also present oneor more subscription levels associated with different subscription feesfor the different types of access. The channel presented by processinglogic can be one of multiple paid channels of an internet-based contentplatform. Each paid channel can include one or more media items that areeither paid or free items. The end user may be provided with an optionto select a single type of access for the channel or multiple types ofaccess for the channel (e.g., a combination of offline access andsubtitles with a reduced number of advertisements).

At block 1310, processing logic receives a selection of one of thesubscription levels for the channel, where the selected subscriptionlevel corresponds to a specific type(s) of access to the content of thechannel. At block 1315, processing logic records the selectedsubscription level of the end user for the channel, along with thespecific type(s) of access to the content of the channel. When recordingthe selected subscription level of the end user, processing logic canmodify an existing user record or create a new user record, either ofwhich can be stores in a data store, such as data store 150. After block1315, the method 1300 ends.

FIGS. 14A-E illustrate methods of providing different types of access tomedia items of the channel according to a subscription level of the enduser.

FIG. 14A is a flow diagram illustrating a method 1400 for presentingmedia items of a channel to an end user according to a qualitycharacteristic type of access, in accordance with some embodiments ofthe present disclosure. In one implementation, method 1400 may beperformed by a channel content access management subsystem, asillustrated in FIG. 5.

Referring to FIG. 14A, the method 1400 begins at block 1402 whereprocessing logic receives a user request to access a media itemaccording to one or more selected quality characteristics. The selectedquality characteristics can include a video quality or resolution, asdescribed herein. At block 1404, processing logic determines whether theuser is subscribed to a channel that includes the media item. If theuser is a subscriber of the channel, processing logic can determine asubscription level of the user and whether the selected qualitycharacteristics are allowed under the user subscription at block 1408.Determining subscription information for the user can include querying adata store, such as data store 150, to identify subscription data andsubscription level data of the user. When the subscription level allowsthe user to access the media item according to the requested type ofaccess, at block 1410 processing logic can present the media itemaccording to the selected quality characteristics. After block 1410,method 140 ends.

Alternatively, when processing logic determines that the user is notsubscribed to the channel at block 1404, processing logic can present amessage to the user. The message can be an error message that notifiesthe user that they are not subscribed to the channel. The message canalso include information that instructs the user how to subscribe to thechannel.

Similarly, if the user is a subscriber of the channel, but the usersubscription does not allow the selected quality characteristics,processing logic can provide a message to the user at block 1412. Themessage can be an error message that notifies the user that theirsubscription level does not allow the requested type of access to themedia item. This message can also include information that instructs theuser how to unlock the requested type of access (e.g., qualitycharacteristics).

At block 1414, processing logic can deny access to the media item.Denying access can include providing limited access to the media item,as described herein, and can also include providing limited access tothe media item according to the selected quality characteristics. Afterblock 1414, method 140 ends.

In one implementation, processing logic does not provide a message tothe user and proceeds straight to block 1414 if the user is not asubscriber or if the user's subscription level does not allow therequested type of access. In a further implementation, if the user isnot a subscriber or if the user's subscription level is insufficient,processing logic presents a subscription flow, similar to that of FIGS.24A-B, to allow the user to easily subscribe to the channel to enablethe requested type of access.

FIG. 14B is a flow diagram illustrating a method 1416 for presentingoffline access to media items of a channel to an end user, in accordancewith some embodiments of the present disclosure. In one implementation,method 1416 may be performed by a channel content access managementsubsystem, as illustrated in FIG. 5.

Referring to FIG. 14B, the method 1416 begins at block 1418 whereprocessing logic receives a user request for offline access to a mediaitem. At block 1420, processing logic determines whether the user issubscribed to a channel that includes the media item. If the user is asubscriber of the channel, at block 1422 processing logic can determinea subscription level of the user and whether offline access is allowedunder the user subscription. Determining subscription information forthe user can include querying a data store, such as data store 150, toidentify subscription data and subscription level data of the user. Ifthe subscription level allows the user to access the media item offline,at block 1424 processing logic can receive a selection of the media itemin the channel for offline access. At block 1426, processing logic cancause the selected media item to be downloaded to a user device. In oneimplementation, processing logic does not perform block 1424 andproceeds from block 1422 to block 1426. After block 1426, method 1416ends.

Alternatively, when processing logic determines that the user is notsubscribed to the channel at block 1420, processing logic can provide amessage to the user. The message can be an error message that notifiesthe user that they are not subscribed to the channel. The message canalso include information that instructs the user how to subscribe to thechannel.

Similarly, if the user is a subscriber of the channel, but the usersubscription does not allow offline access, processing logic can providea message to the user at block 1428. The message can be an error messagethat notifies the user that their subscription level does not allow therequested type of access to the media item. This message can alsoinclude information that instructs the user how to unlock the requestedtype of access (e.g., offline access).

At block 1430, processing logic can deny access to the media item.Denying access can include providing limited access to the media item,as described herein, and can also include providing limited offlineaccess to the media item. After block 1430, method 1416 ends.

In one implementation, processing logic does not provide a message tothe user and proceeds straight to block 1430 if the user is not asubscriber or if the user's subscription level does not allow therequested type of access. In a further implementation, when the user isnot a subscriber or when the user's subscription level is insufficient,processing logic presents a subscription flow, similar to that of FIGS.24A-B, to allow the user to easily subscribe to the channel to enablethe requested type of access.

FIG. 14C is a flow diagram illustrating a method 1432 for providingmedia items of a channel to an additional user device, in accordancewith some embodiments of the present disclosure. In one implementation,method 1432 may be performed by a channel content access managementsubsystem, as illustrated in FIG. 5.

Referring to FIG. 14C, the method 1432 begins at block 1434 whereprocessing logic receives a user request to access a media item from anadditional end user device. The end user device can be a second deviceoperated by the end user. For example, the user may desire to use alaptop computer and a tablet computer to access media items. Whensubscribing to the channel, such as via the process flow of FIG. 13, theuser can select a type of access that unlocks access for the desireddevices. At block 1438, processing logic determines whether the user issubscribed to a channel that includes the media item. If the user is asubscriber of the channel, a block 1408 processing logic can determine asubscription level of the user and whether the end user device isallowed to be used for consuming media items of the channel under theuser subscription at block 1408. Determining subscription informationfor the user can include querying a data store, such as data store 150,to identify subscription data and subscription level data of the user.If the subscription level allows the user to access the media item viathe desired user device, at block 1440 processing logic can cause themedia item to be streamed or downloaded to the end user device. Afterblock 1440, method 1432 ends.

Alternatively, if processing logic determines that the user is notsubscribed to the channel at block 1436, processing logic can provide amessage to the user. The message can be an error message that notifiesthe user that they are not subscribed to the channel. The message canalso include information that instructs the user how to subscribe to thechannel.

Similarly, if the user is a subscriber of the channel, but the usersubscription does not allow access from the end user device, processinglogic can provide a message to the user at block 1442. The message canbe an error message that notifies the user that their subscription leveldoes not allow the requested type of access to the media item. Thismessage can also include information that instructs the user how tounlock the requested type of access (e.g., additional end user devices).

At block 1444, processing logic can deny access to the media item.Denying access can include providing limited access to the media item,as described herein, and can also include providing limited access tothe media item to the end user device. After block 1444, method 1432ends.

In one implementation, processing logic does not provide a message tothe user and proceeds straight to block 1444 if the user is not asubscriber or if the user's subscription level does not allow therequested type of access. In a further implementation, if the user isnot a subscriber or if the user's subscription level is insufficient,processing logic presents a subscription flow, similar to that of FIGS.24A-B, to allow the user to easily subscribe to the channel to enablethe requested type of access.

FIG. 14D is a flow diagram illustrating a method 1446 for presentingmedia items of a channel with subtitles, in accordance with someembodiments of the present disclosure. In one implementation, method1446 may be performed by a channel content access management subsystem,as illustrated in FIG. 5.

Referring to FIG. 14D, the method 1446 begins at block 1448 whereprocessing logic receives a user request to access a media item withsubtitles. At block 1450, processing logic determines whether the useris subscribed to a channel that includes the media item. If the user isa subscriber of the channel, processing logic can determine asubscription level of the user and whether subtitles are allowed for themedia item under the user subscription at block 1452. Determiningsubscription information for the user can include querying a data store,such as data store 150, to identify subscription data and subscriptionlevel data of the user. When the subscription level allows the user toaccess the media item according to the requested type of access, atblock 1454 processing logic can present the media item with subtitles.After block 1454, method 140 ends.

Alternatively, when processing logic determines that the user is notsubscribed to the channel at block 1450, processing logic can present amessage to the user. The message can be an error message that notifiesthe user that they are not subscribed to the channel. The message canalso include information that instructs the user how to subscribe to thechannel.

Similarly, if the user is a subscriber of the channel, but the usersubscription does not allow the subtitles for the selected media,processing logic can provide a message to the user at block 1456. Themessage can be an error message that notifies the user that theirsubscription level does not allow the requested type of access to themedia item. This message can also include information that instructs theuser how to unlock the requested type of access (e.g., subtitles).

At block 1458, processing logic can deny access to the media item.Denying access can include providing limited access to the media item,as described herein, and can also include providing limited access tothe media item with the selected subtitles. After block 1458, method1446 ends.

In one implementation, processing logic does not provide a message tothe user and proceeds straight to block 1458 if the user is not asubscriber or if the user's subscription level does not allow therequested type of access. In a further implementation, if the user isnot a subscriber or if the user's subscription level is insufficient,processing logic presents a subscription flow, similar to that of FIGS.24A-B, to allow the user to easily subscribe to the channel to enablethe requested type of access.

FIG. 14E is a flow diagram illustrating a method 1460 for presentingmedia items of a channel to an end user in a different language, inaccordance with some embodiments of the present disclosure. In oneimplementation, method 1460 may be performed by a channel content accessmanagement subsystem, as illustrated in FIG. 5.

Referring to FIG. 14E, the method 1460 begins at block 1462 whereprocessing logic receives a user request for access to a media item in adifferent language. The selected different language can include anylanguage, including English, French, Spanish, German, Farsi, GalacticBasic, etc. At block 1464, processing logic determines whether the useris subscribed to a channel that includes the media item. If the user isa subscriber of the channel, at block 1466 processing logic candetermine a subscription level of the user and whether the selecteddifferent language is allowed under the user subscription. Determiningsubscription information for the user can include querying a data store,such as data store 150, to identify subscription data and subscriptionlevel data of the user. If the subscription level allows the user toaccess the media item in a different language, at block 1468 processinglogic can present the media item in the different language. After block1468, method 1460 ends.

Alternatively, when processing logic determines that the user is notsubscribed to the channel at block 1464, processing logic can provide amessage to the user. The message can be an error message that notifiesthe user that they are not subscribed to the channel. The message canalso include information that instructs the user how to subscribe to thechannel

Similarly, if the user is a subscriber of the channel, but the usersubscription does not allow the selected different language, processinglogic can provide a message to the user at block 1470. The message canbe an error message that notifies the user that their subscription leveldoes not allow the requested type of access to the media item. Thismessage can also include information that instructs the user how tounlock the requested type of access (e.g., different languages).

At block 1472, processing logic can deny access to the media item.Denying access can include providing limited access to the media item,as described herein, and can also include providing limited access tothe media item according to the selected different language. After block1472, method 1460 ends.

In one implementation, processing logic does not provide a message tothe user and proceeds straight to block 1472 if the user is not asubscriber or if the user's subscription level does not allow therequested type of access. In a further implementation, when the user isnot a subscriber or when the user's subscription level is insufficient,processing logic presents a subscription flow, similar to that of FIGS.24A-B, to allow the user to easily subscribe to the channel to enablethe requested type of access.

FIGS. 15-27 illustrate example graphical user interfaces (GUI) inaccordance with aspects of the present disclosure. The example GUIs maybe presented by and/or displayed within a web browser when the useraccesses the internet-based content platform via the web browser. Inanother embodiment, the example GUIs may be an interface presented by amedia viewer (e.g., an app, an application, a program, a softwaremodule/component, etc., that may be used to subscribe to channels andview, play, and/or consume media items of the channels). Some exampleGUIs include control elements in the form of a button (e.g., a buttonfor subscribing to a channel). However, it should be noted that variousother control elements can be used for selection by a user such as acheck box, a link, or any other user interface elements.

As shown, some example GUIs contain a search tool (e.g., to search for achannel or media item of interest), an upload tool (e.g., to upload anew media item to an internet-based content platform), a menu (e.g., tonavigate to different GUIs of the internet-based content platform), auser identifier, a settings tool (e.g., to configure settings of GUIs ofthe internet-based content platform), and a navigation tool fornavigating to other platforms (e.g., an email platform, a socialplatform, a storage platform, an image platform, a calendar platform,among others).

FIG. 15A is an example user home (e.g., homepage) GUI 1500 in accordancewith some embodiments of the present disclosure. The user home GUI 1500can include a user feed 1505, user lists and filters 1515, a mastheadadvertisement 1520 and at least one other advertisement 1525.

The user feed 1505 can include information of activities associated withchannels to which the user is subscribed. When the user subscribes to achannel (e.g., paid and free) or connects with a social contact, theinternet-based content platform may provide the user with new mediaitems (e.g., new content) to consume and/or provide the user with accessto media items. For example, media items from subscribed channels (e.g.,paid and free) may be displayed on the user feed 1505. It should beunderstood that any type of activity or feed information from any sourceor other entity may be shown in the user feed 1505. For example, animage (e.g., a JPEG) may be shown in the user feed 1505. In anotherexample, digital music (e.g., an MP3) may be played in the user feed1505. In yet another example, social media information (e.g., a tweet, alike, etc.) may be shown in the user feed 1505. In a further example,blog information (e.g., a blog post, etc.) may be shown in the user feed1505.

The information of activities of others (e.g., channels, socialcontacts, celebrities, etc.) can be presented as one or more user feeditems 1510A-1510N. The user feed items 1510A-1510N can include anactivity message, a thumbnail or frame of a media item, a media itemtitle, and a description of the media item. In one embodiment, the userfeed items 1510A-1510N can include information about the most recentactivities associated with each channel (e.g., content uploaded to thechannel, etc.), as well as a mechanism for the user to perform an actionfor that activity (e.g., providing a frame or thumbnail of the contentuploaded to the channel that serves as a link to the content). A userfeed item 1510A can include an activity message that “Channel A uploadeda video,” as well as a thumbnail or frame of the video which the usercan activate to view the new video. Another user feed item 1510B caninclude an activity message that “Channel B added five videos to aplaylist,” as well as the playlist, which can include links to thevideos added to the playlist. When a curator of a channel, for example,adds a new media item to the paid channel, a new user feed item 1510that introduces the new item to the user can be added to the user feed1505. This new user feed item 1510 can be added to the user feed 1505 inreal-time (as soon as the curator of the channel provides the new mediaitem to be added to the channel). Similarly, when the curator of thechannel removes an existing media item from a channel, any correspondingexisting user feed items 1510 can be removed from the user feed 1505 inreal time. When a user is unsubscribed from a channel, theinternet-based content platform can also prevent media items of thechannel from appearing in the user feed 1505.

The user lists and filters 1515 can be a list of one or more channels(free or paid) that may be of interest to the user. The user lists andfilters 1515 can also include a guide that helps the user to discovercontent that may be of interest. For example, user lists and filters1515 can include a section for what to watch, what media items arepopular on the internet-based content platform, what media items socialcontacts of the user have been consuming, etc. The user lists andfilters 1515 can also include links to help the user to see their watchhistory and what media items they have marked for later consumption.

The user lists and filters 1515 can also include a subscriptions sectionthat includes a list of one or more channels that the user is currentlysubscribed to. In one implementation, the subscriptions section mayinclude a list of all channels, both free and paid, to which the user issubscribed. In another embodiment, the subscriptions section may includea subset of channels to which the user is subscribed. For example, thesubscriptions section may be organized around whether the channel is apaid channel or a free channel. The subscriptions section may alsopresent a predefined number of channels (e.g., five channels), thechannels that the user accesses most frequently, the channels that theuser has accessed most recently, the channels that the user has mostrecently subscribed to, etc. The subscriptions section may also beorganized by one or more advertising attributes, by a type of access orby a subscription level. The subscriptions section can further includethe channel names “Channel A” and “Channel B” to present to the userthat the user is currently subscribed to channel A and channel B. When auser subscribes to a channel, the channel can be added to thesubscriptions section. The user can then select the channel from thesubscriptions section to consume (e.g., playback or listen to) mediaitems of the channel. The user can select a media item of the channeland can immediately consume the media item.

In one implementation, the user lists and filters 1515 can include oneor more buttons (not shown). The buttons may allow the user to view ahistory of the media items that the user has consumed (e.g., viewed orplayed). For example, when the user selects and/or activates a button, anew GUI that includes a list of the last (e.g., ten, twenty, fifty orhundred) media items viewed by the user may be presented to the user. Abutton may allow a user to view different playlists of media items thatthe user has previously created and/or obtained. A playlist may be alist and/or an order of different media items that can be viewed insequential or shuffled order without interaction from the user. A mediaviewer (e.g., a media viewer application and/or a web browser) may playthe media items on a playlist in the order in which the media items arelisted on the playlist. A user may also transition between media itemson a play list. For example, a user may play the next media item on theplaylist or may select a particular media item in the playlist.

In a further implementation, when the user is unsubscribed from achannel, the channel is removed from the subscriptions section. The usermay be unsubscribed from a channel if the user provides user inputindicating that the user wants to unsubscribe from the recommendedchannel. For example, the user may activate an “Unsubscribe” button. Forpaid channels, the user may be unsubscribed from a channel if the user'ssubscription runs out. For example, if the user subscription was for aterm of one month and the user does not pay for an additional month, theuser may be unsubscribed from the channel. Similarly, when a user gainsaccess to a channel through a promotion or trial period, the user may beunsubscribed from the channel when the promotion or trial periodconcludes.

The masthead advertisement 1520 can be an advertisement that isprominently displayed on the user home GUI 1500 for each user of theinternet-based content platform. The masthead advertisement 1520includes one or more media types, such as text, audio, video and animage. The display prominence and positioning of the mastheadadvertisement 1520 can help drive user traffic to a particular internetdestination described in the masthead advertisement 1520. To facilitatedriving traffic, the masthead advertisement 1520 can include one or morehyperlinks that direct users to an internet property, such as a channelhome GUI or composite channel home GUI, as described in conjunction withFIGS. 19, 21, 25 and 26. The masthead advertisement 1520 can alsoencourage subscriptions to a channel and can include a subscribed buttonthat enables a user to subscribe to a channel from the mastheadadvertisement 1520.

The advertisement 1525 can be any type of advertisement, such as adisplay advertisement, a banner advertisement, a video advertisement,etc. The advertisement 1525 can be used to inform users of content andchannels that may be of interest to the user. In one implementation, theadvertisement 1525 can include a list of one or more channels, asdescribed in further detail in conjunction with FIGS. 18A and 18B.

In one implementation, the ads for the masthead advertisement 1520 orfor the advertisement 1525 are auctioned to determine what ads should bereturned to the internet-based content platform and/or the order inwhich they should be presented to the user. This determination maydepend on, for example, advertisers' bids (e.g., the maximum amount anadvertiser will pay per user click on an advertisement) and/or theperformance scores of the ads. The performance score of an ad may becalculated based on, for example, historical click-through rates,relevance of an advertiser's ad text and keywords, an advertiser'saccount history, etc. In another implementation, the ads are selected bychannel advertisement management subsystem 135 on a reservation basis(e.g., based on predefined conditions) without taking into account otheradvertisers' bids and/or the performance scores of the ads.

FIG. 15B illustrates an example home GUI 1550 that may be presented to achannel curator after the channel curator creates a new channel and/orafter the channel curator logs into an internet-based content platform,according to one embodiment of the present disclosure. The GUI 1550includes a search bar, button 1551, lists and filters 1565, and a feed1555. As indicated in FIG. 3, the name of the channel created by thechannel curator is “Bob's Channel.” The GUI 1550 illustrates that a userof the internet-based content platform can be a curator of somechannels, as well as an end user of other channels.

The button 1551 allows a channel curator to upload media items to thechannel (e.g., to Bob's Channel). When the channel curator activates(e.g., selects, clicks, etc.) the button 1551, a media item upload GUImay be presented to the channel curator. The media item upload GUI mayallow the channel curator to select and upload media items to thechannel (e.g., to Bob's Channel).

The feed 1555 can include information of activities associated withchannels to which the channel curator is subscribed. When the channelcurator subscribes to a channel (e.g., paid and free) or connects with asocial contact, the internet-based content platform may provide thechannel curator with new media items (e.g., media items added to achannel that the channel curator is subscribed to, media items that havebeen commented on or approved by a social contact of the channelcurator, etc.) to consume and/or provide the channel curator with accessto media items. For example, media items from subscribed channels (e.g.,paid and free) may be displayed on the user feed 1555. It should beunderstood that any type of activity or feed information from any sourceor other entity may be shown in the feed 1555. For example, an image(e.g., a JPEG) may be shown in the feed 1555, digital music (e.g., anMP3) may be played in the feed 1555, social media information (e.g., atweet, a like, etc.) may be shown in the feed 1555, blog information(e.g., a blog post, etc.) may be shown in the feed 1555, etc.

The information of activities of others (e.g., other channel curators,social contacts, celebrities, etc.) can be presented as one or more feeditems 1560A-1560N. The feed items 1560A-1560N can include an activitymessage, a thumbnail or frame of a media item, a media item title, and adescription of the media item. In one embodiment, the feed items1560A-1560N can include information about the most recent activitiesassociated with each channel (e.g., content uploaded to the channel,etc.), as well as a mechanism for the channel curator to perform anaction for that activity (e.g., providing a frame or thumbnail of thecontent uploaded to the channel that serves as a link to the content).For example, feed item 1560A may include an activity message that“Channel A uploaded a video,” as well as a thumbnail or frame of thevideo which the channel curator can activate to view the new video. Whenother channel curators add and/or remove media items from theirchannels, the feed 1555 may be updated in real-time (e.g., new feeditems may be added and existing feed items may be removed). When achannel curator is unsubscribed from a channel, the internet-basedcontent platform can also prevent media items of the channel fromappearing in the feed 1555.

The lists and filters 1565 can be a list of one or more channels (freeor paid) that may be of interest to the channel curator. The lists andfilters 1565 can also include a guide that helps the channel curator todiscover content that may be of interest. For example, lists and filters1565 can include a section for what to watch, what media items arepopular on the internet-based content platform, what media items socialcontacts of the channel curator have been consuming, etc. The lists andfilters 1565 can also include links to help the channel curator to seetheir watch history and what media items they have marked for laterconsumption.

The lists and filters 1565 can also include a subscriptions section thatincludes a list of one or more channels that the channel curator iscurrently subscribed to. In one embodiment, the subscriptions sectionmay include a list of all channels, both free and paid, to which thechannel curator is subscribed. In another embodiment, the subscriptionssection may include a subset of channels to which the channel curator issubscribed. The subscriptions section may also present a predefinednumber of channels (e.g., five channels), the channels that the channelcurator accesses most frequently, the channels that the channel curatorhas accessed most recently, the channels that the channel curator hasmost recently subscribed to, etc. The subscriptions section can furtherinclude the channel names (e.g., “Channel A”) to present to the channelcurator that the channel curator is currently subscribed to channel.When a channel curator subscribes to a channel, the channel can be addedto the subscriptions section. The channel curator can then select thechannel from the subscriptions section to consume (e.g., playback orlisten to) media items of the channel. The channel curator can select amedia item of the channel and can immediately consume the media item.

In one implementation, the lists and filters 1565 can include one ormore buttons (not shown). The buttons may allow the channel curator toview a history of the media items (e.g., a list of the last ten, twenty,fifty, or hundred media items) that the channel curator has consumed(e.g., viewed or played). A button may allow a channel curator to viewdifferent playlists of media items that the channel curator haspreviously created and/or obtained. A playlist may be a list and/or anorder of different media items that can be viewed in sequential orshuffled order without interaction from the channel curator. A mediaviewer (e.g., a media viewer application and/or a web browser) may playthe media items on a playlist in the order in which the media items arelisted on the playlist. A channel curator may also transition betweenmedia items on a play list. For example, a channel curator may play thenext media item on the playlist or may select a particular media item inthe playlist.

In a further implementation, when the channel curator is unsubscribedfrom a channel, the channel is removed from the subscriptions section.The channel curator may be unsubscribed from a channel if the channelcurator provides input indicating that the channel curator wants tounsubscribe from the recommended channel. For example, the channelcurator may activate an “Unsubscribe” button. For paid channels, thechannel curator may be unsubscribed from a channel if the channelcurator's subscription runs out. For example, if the subscription wasfor a term of one month and the channel curator does not pay for anadditional month, the channel curator may be unsubscribed from thechannel. Similarly, when a channel curator gains access to a channelthrough a promotion or trial period, the channel curator may beunsubscribed from the channel when the promotion or trial periodconcludes.

FIG. 16 is an example search GUI 1600 in accordance with someembodiments of the present disclosure. The search GUI 1600 includes asearch results portion 1603, user lists and filters 1515 and at leastone advertisement 1525.

The search results portion 1603 presents search results in the searchGUI in response to a search query of the end user. The search can be atext-based search, an image-based search, an audio-based search, avideo-based search, a biometric input-based search, etc. When the enduser performs a search using a search tool in the search GUI 1600, forexample, one or more search results 1605A-1605N can be presented to theuser. The search results can be media items, both paid and free, andchannels, also paid or free. The search GUI 1600 can receive a selectionof a media item of a paid channel from among the search results. Thesearch GUI 1600 can then cause the media item to be played to the enduser. In one implementation, the search results can include at least oneadvertised search result, shown as result 1605A, that appearsprominently among other the search results.

Search results 1605A, 1605B, 1605C, 1605D and 1605N have been providedin the search GUI 1600 as examples and can be presented in any order.Each search result can include a thumbnail, the title of a channel ormedia item, and a description of the channel or media item. Thethumbnail 1610 may be text, a thumbnail, an image, an icon, a frame, avideo, a video clip, and/or some other media used to represent the mediaitem for the search result 1605.

In an example, the search result 1605A is an advertised media item andcan include the title of the advertised media item 1615, a descriptionof the media item 1620, and a thumbnail 1610A.

Search result 1605B specifies a paid channel and can include the titleof the paid channel 1625, a description of the paid channel 1630, and athumbnail 1610B. The description of the paid channel 1630 can alsoinclude an indicator 1635 that the search result specifies a channel, aprice 1640 to subscribe to the paid channel and a subscribe button 1645that the user can activate to subscribe to the paid channel directlyfrom the search GUI 1600. In one implementation, when the user activatesthe subscribe button, the user can be presented with a screen or apop-up window where the user can enter subscription information, andpayment information to subscribe to the paid channel.

Search result 1605C can specify a paid media item that is part of a paidchannel and can include the title of the paid media item 1650, adescription of the paid media item 1655, and a thumbnail 1610C. Thedescription of the paid media item 1655 can also include a paid icon1660 that notifies the user that the media item is a paid media item,and an indicator 1665 of the types of access available for the paidmedia item. In this example, available types of access for the paidmedia item search result 1605C include playback in three dimensions,playback in high-definition (e.g., 1080p, 4k), and closed captions.

Search result 1605D specifies a free media item that is part of a freechannel and can include the title of the free media item 1670, adescription of the free media item 1675, and a thumbnail 1610 d.

Search result 1605N can be for any type of media item or channel, canindicate whether it is free or paid and can also indicate anyadvertising attribute or available type of access to the user. In oneimplementation, the internet-based content platform can configure thesearch results to increase visibility for media items that are part ofchannels the user has already subscribed to. In another implementation,internet-based content platform can configure the search results toincrease visibility for media items that the user is not subscribed to,but has access to because the user is subscribed to a composite channelcontaining the particular channel or media item featured in the searchresult.

FIG. 17 is an example browse channels GUI in accordance with someembodiments of the present disclosure. The browse channels GUI includesone or more channel categories 1705A-N, user lists and filters 1515, atleast one advertisement 1525, subscribe button 1645 and paid icon 1660.

The channel categories 1705A-N can each include one or more channels.Channel can be grouped by the categories 1705A-N and can be for anycategory including a “best of” category, a sports category, an interestcategory, etc. The channels within the categories can be free or paid.Some channel categories contain only free channels. Other channelcategories contain only paid channels. Hybrid channel categories containboth paid and free channels. Paid channels can be identified as beingpaid through text, an icon, an image or any other indication that theuser should pay for full access to the paid channel. In an example,channel category 1705A includes channels 1710A-N, at least one of whichis a paid channel. Similarly, channel category 1705B includes channels1715A-N.

FIGS. 18A-B illustrate example advertisements 1525 in accordance withaspects of the present disclosure. The advertisements 1525 can includeone or more channels 1805A-N that are part of a list or group. Forexample, advertisements 1525 can present recommended, suggested,popular, featured, paid, or composite channels to the user.Advertisements 1525 can include subscribe button 1645 and paid icon1660.

In one implementation, the advertisement 1525 includes a graphicalindicator (e.g., subscribe button) next to each recommended channel. Inone implementation, when a user activates or otherwise selects thegraphical indicator, a menu appears that facilitates user subscriptionto the channel. In an alternate embodiment, when a user activates on thegraphical indicator, a popup window including a graphical representation(e.g., an image of a single frame from the digital content) of digitalcontent in the recommended channel appears. It should be understood thatin other embodiments, other indicators such as graphicalrepresentations, and/or text can be presented to a user to providerecommended channels associated with the internet-based contentplatform. Paid channels can include an additional graphical indicatorthat notifies the user that the channel is a paid channel.

FIG. 18B illustrates different channel groups 1810A and 1810B within theadvertisement 1525B. One channel group 1810A, for example, can be forrecommended channels for the user while another channel group 1810B canbe for popular channels. Any number of channel groups can be presentedin advertisement 1525B.

In one implementation, the content sharing platform may identifyrecommended paid channels for the user based on interactions that theuser has with other users of the content sharing platform and/or otherplatforms. For example, the content sharing platform may identify otherusers that communicate with the user (e.g., other users that the useremails, other users that the user chats with, other users that the usercommunicates messages with using a social connection platform, etc.).The content sharing platform may identify paid channels curated by theother users and/or paid channels that the other users may be subscribedto. The content sharing platform may temporarily subscribe the user tothese paid channels on a trial basis (e.g., recommended channels). Inanother example, the content sharing platform may also analyze theinteractions (e.g., analyze the emails, chats, messages, and/or posts)to identify channels that may include media items that are of interestto the user. In another embodiment, the content sharing platform maytemporarily subscribe a user to paid channels based on user inputprovided by the user. For example, the user may voluntarily provideinput indicating the user's interests, preferences, likes, dislikes,hobbies, employment, geographical location, personal information, and/orother demographic information. The content sharing platform may identifyrecommended paid channels that include media items that may be ofinterest to the user based on the personal information and/or otherdemographic information voluntarily provided by the user viaadvertisements 1525A and 1525B.

In situations in which the systems discussed here collect personalinformation about users, or may make use of personal information, theusers may be provided with an opportunity to control whether programs orfeatures collect user information (e.g., information about a user'ssocial network, social actions, interactions or activities, profession,a user's preferences, a user's viewing history, or a user's currentlocation), or to control whether and/or how to receive content from thecontent server that may be more relevant to the user. In addition,certain data may be treated in one or more ways before it is stored orused, so that personally identifiable information is removed. Forexample, a user's identity may be treated so that no personallyidentifiable information can be determined for the user, or a user'sgeographic location may be generalized where location information isobtained (such as to a city, ZIP code, or state level), so that aparticular location of a user cannot be determined. Thus, the user mayhave control over how information is collected about the user and usedby a content server.

FIG. 19 illustrates an example channel home GUI 1900 in accordance withsome implementations of the present disclosure. The channel home GUI1900 can showcase media items offered through the channel and canencourage a user to subscribe to the channel. The channel home GUI 1900can also disseminate information to users about the channel, media itemsof the channel or any other information the channel curator chooses tomake available on the channel home GUI 1900. When the channel home GUI1900 is for a paid channel, it can present information to users aboutsubscribing to the paid channel. For example, the channel home GUI 1900can showcase interesting media items that are accessible through a paidsubscription to the paid channel. Additionally, the channel home GUI1900 can present different subscription fees, durations, andsubscription options, such as paying for different advertisingattributes of the paid channel, or for different types of access tomedia items of the paid channel. Using the information presented by thechannel home GUI 1900, the user can make an informed purchasingdecision.

The channel home GUI 1900 can include a channel header 1905, a channeltitle 1910, a menu 1915, channel subscription details 1920, channelsubscription information 1925, one or more channel media items 1950,user lists and filters 1515, one or more advertisements 1525, subscribebutton 1645 and paid icon 1660.

The channel header 1905 can describe the channel, media items of thechannel, or can be a promotion for the channel. The channel header 1905can be an image or text that is selected by the channel curator.

The menu 1915 can enable user to navigate to different channel GUIs,such as a home GUI, a browse GUI, a channel feed GUI, a media item GUI,an about GUI, a discussion GUI, or a channel search GUI.

The menu 1915 can enable the user to navigate to different channel GUIs,such as a home GUI, a browse GUI, a channel feed GUI, a media item GUI,an about GUI, a discussion GUI, or a channel search GUI.

Channel subscription details 1920 can specify benefits for subscribingto the paid channel. Channel subscription details 1920 can also includepromotions or trial periods for the channel. Channel subscriptiondetails 1920 can further include metadata of the channel, such ascreated by metadata, channel description and channel statistics. Thestatistics can include a number of people who have subscribed to thepaid channel, aggregate statistics across other channels, a number ofmedia items in the paid channel, etc.

Channel subscription information 1925 can present subscriber fees 1930,advertising attributes 1945, types of access (not shown) to the user,and a paid icon 1660. The user subscribes to the paid channel byactivating a subscribe button 1645.

In one implementation, the paid channel has one subscription level thatis set by the channel curator. In another implementation, the paidchannel can permit a user to select an advertising attribute from amonga subscriber set of advertising attributes. To subscribe to the channelwith the selected advertising attribute, the user pays the correspondingsubscriber fee. In another implementation, the paid channel has multiplesubscription levels that correspond to different types of access to themedia items of the paid channel. When subscribing to the paid channel,the user can select a subscription level that unlocks a desired type ofaccess to media items of the paid channel.

The channel home GUI 1900 can also include one or more media items 1950.The media items can be organized in any manner and the organization canhelp users locate interesting media items. Media items can be organizedin different categories, such as recent uploads, popular uploads, likes,playlists, parodies, original videos, reposts, or other categories. Inone implementation, a channel curator defines some or all of thecategories and organizes media items of the channel within thecategories. When a channel curator adds or uploads a media item to thechannel, the new media item can be presented as part of the paid channelimmediately after the channel curator adds the new media item to thepaid channel. Users that are browsing the channel may observe theaddition of the new media in real time. Similarly, when the channelcurator remove an existing media item from the paid channel, theexisting media item can be removed from the channel home GUI 1900 inreal time. In another implementation, users can organize, filter andsort media items by category, upload date, number of views, number oflike, number of dislikes, paid, free, etc.

Some of the media items can be viewable for free, even if the mediaitems are part of a paid channel. Users can watch these media items evenif they have not subscribed to the paid channel, which can be a way forthe user to sample content of the paid channel before committing topaying for access. In another implementation, one or more media items ofthe paid channel can be available for individual purchase within thechannel for users who have not subscribed to the paid channel. Suchmedia items can have an identifier 1935 to inform the user that themedia item can be purchased on an individual basis. In this manner, theuser can choose between renting or purchasing a single media item orsubscribing to a whole channel that includes the media item.

The channel home GUI 1900 can also include one or more advertisement1525. The advertisement 1525 can present channels or media items thatare related to the channel depicted in the channel home GUI 1900.

FIG. 20 illustrates an example channel feed GUI 2000 in accordance withsome implementations of the present disclosure. The channel feed GUI2000 can be similar to the channel home GUI, with similar features, suchas a channel header 2005, a channel title 2010, a menu 2015, channelsubscription details 2020, channel subscription information 2025, userlists and filters 1515, advertisement 1525, subscribe button 1645 andpaid icon 1660. In one implementation, a user can navigate to thechannel feed GUI 2000 using navigation tools in the menu 2015. Thechannel feed GUI 2000 can also include one or more channel feed items2055A-N within a channel feed 2050.

The channel feed 2050 can include information about activitiesassociated with channels to which the user is subscribed. In oneimplementation, the channel feed 2050 can include information about themost recent activities (e.g., activity items) associated with thechannel (e.g., paid or free media items uploaded to the channel, etc.),as well as a mechanism for the user to perform an action for thatactivity (e.g., providing a frame, image, and/or icon of the digitalcontent uploaded to the channel that serves as a link to the digitalcontent).

As illustrated in FIG. 20, the channel feed 2050 includes feed items2055A-N. Each media item may include information about the activity, thetitle of a media item, a description of the media item, and thumbnailfor the media item. In one implementation, when a user is unsubscribedfrom a paid channel, the user may not be permitted to view the channelfeed 2050.

FIG. 21 illustrates an example composite channel home GUI 2100 inaccordance with some implementations of the present disclosure. Thecomposite channel home GUI 2100 can be similar to the channel home GUI1900 and can include similar features, such as a composite channelheader 2105, a composite channel title 2110, a menu 2115, compositechannel subscription details 2120, composite channel subscriptioninformation 2025, user lists and filters 1515, advertisement 1525, paidicon 1660 and subscribe button 1645. In one implementation, a user cannavigate to the composite channel home GUI 2100 using navigation toolsin the menu 2115.

In addition to the features described in the channel subscriptioninformation 1925 of FIG. 19, the composite channel subscriptioninformation 2125 can also include information pertaining to thecomposite channel, one or more component channels, and media items ofthe composite channel that are not part of any component channel.Because the composite channel can include multiple component channels,the composite channel subscription information 2125 can inform usersthat subscribing to the composite channel can be more cost effectivethen subscribing to each component channel individually.

The composite channel home GUI 2100 can also include a listing ofcomponent channels 2150 included in a subscription to the compositechannel. In one implementation, each component channel can include asubscribe button 1645 that can be used to subscribe to the componentchannel individually.

The composite channel home GUI 2100 can also include one or morecomposite channel media items 2155. The media items can be organized inany manner and the organization can help users locate interesting mediaitems. Media items can be organized in different categories, such as bycomponent channel, recent uploads, popular uploads, likes, playlists,parodies, original videos, reposts, or other categories. In oneimplementation, a channel curator defines some or all of the categoriesand organizes media items of the channel within the categories. Asshown, the media items of the composite channel are grouped by componentchannels. When a channel curator adds or uploads a media item to thechannel, the new media item can be presented as part of the compositechannel immediately after the channel curator adds the new media item tothe composite channel. Users that are browsing the composite channel mayobserve the addition of the new media in real time. Similarly, when thechannel curator removes an existing media item from the compositechannel, the existing media item can be removed from the compositechannel home GUI 2100 in real time. In another implementation, users canorganize, filter and sort media items by category, upload date, numberof views, number of like, number of dislikes, paid, free, etc.

Composite channel subscription details 2120 can include benefits forsubscribing to the composite channel. Composite channel subscriptiondetails 2120 can also include promotions or trial periods for thechannel. Composite channel subscription details 2120 can further includemetadata of the channel, such as created by metadata, channeldescription and channel statistics. The statistics can include a numberof people who have subscribed to the composite channel, aggregate statsacross all component channels, a number of channels included in thecomposite channel, a number of media items included in the compositechannel.

FIGS. 22A-B illustrate example watch GUIs 2200A-B in accordance withsome embodiments of the present disclosure. Watch GUIs 2200A-B may bedisplayed to the user in response to a user selection of a media item,such as from the user lists and filters 1515, advertisement 1525, userfeed, search GUI, channel home GUI, channel feed GUI, search result,channel page, composite channel page, an external source, etc. WatchGUIs 2200A-B can include a media viewer 2205, a description 2210,channel subscription information 2215, user lists and filters 1515, atleast one advertisement 1525, subscribe button 1645 and paid icon 1660.

The media viewer 2205 can include media viewer controls (not shown)which may be used to control the consumption of the media items (e.g.,digital videos and/or digital music). The media viewer controls mayinclude a play button, a pause button, a rewind button, a fast forwardbutton, and a volume button. The play button may allow a user to beginand/or restart playback of the media items. The pause button may allow auser to pause and/or un-pause playback of the media items. The rewindbutton may allow a user to rewind playback, move and/or skip to anearlier point in time in the media items. The fast forward button mayallow a user to fast forward playback, move, and/or skip to a laterpoint in time in the media items. The media viewer 2205 may also includea play time display, a playback bar and a playback slider. The play timedisplay may display a current play time and/or a total play time for themedia items. For example, a total play time (e.g., the total length) ofmedia item may be 2 minutes and 30 seconds. The current play time may becurrent time/position in the playback of media item. Playback slider maybe positioned on a region of a playback bar that corresponds to thecurrent play time. The playback slider may be adjusted (e.g., dragged)to any other region of the playback bar to adjust the current play timeshown in the play time display. The media viewer 2205 may present anytype of content, including videos, images, music, and/or other mediaitems.

Watch GUIs 2200A-B can also include description 2210. The description2210 may include information such as the title, a detailed descriptionof the media item or of a channel associated with the media item,whether the media item is a paid or free item, whether the media item ispart of a free or paid channel, a subscription fee to subscribe to achannel associated with the media item, types of access that can beunlocked by subscribing to a channel associated with the media item, anumber of approvals from other users (e.g. “likes”), number of dislikes,the channel that the media item belongs to, and total number of viewsfor the media item. The description 2210 can further include a buttonthat allows a user to subscribe to a paid channel that includes themedia item presented in the media viewer 2205.

The channel subscription information 2215 can indicate subscriber fees,subscription levels, advertising attributes, types of access, etc., asdescribed herein.

In one implementation, when a user is consuming a media item in themedia viewer 2205, other media items or channels from the same curatorcan be prominently displayed in advertisement 1525.

In one implementation, the watch GUI 2200A-B can present a message thatinforms the user that the selected media item is a paid media item thatencourages the user to subscribe to the paid channel for full access tothe media items of the paid channel. The message can inform the user ofany paid channels that include the paid media item as well as how tosubscribe to these paid channels. The message can be displayed before,during or after playback of the media item. For example, beforepermitting access to a media item, watch GUI 2200A-B can present amessage informing the user that the item is a paid item. The watch GUI2200A-B can also present a request that the user subscribe to thechannel prior to consuming the media item. In another example, the watchGUI 2200A-B can present the first two minutes of a thirty minute video,then require a subscription to the channel for further media itemconsumption.

FIG. 22B illustrates one implementation where a message 2235 ispresented in the media viewer 2205 during playback. The messageindicates that the user needs to subscribe to the channel to obtain fullaccess to the media item.

FIGS. 23A-D illustrate example channel subscription information GUIs2300 in accordance with some embodiments of the present disclosure.Channel subscription information interfaces 2300 may be displayed to theuser to encourage a user to subscribe to a paid channel as well as toinform the user of what subscriptions levels or other options areavailable through subscription. The channel subscription informationinterface 2300 can be presented (e.g., as a pop-up window or a mainwindow portion) as part of any GUI provided by the internet-basedcontent platform. Further, when a user navigates to a paid media itemthat the user is not allowed to consume, channel subscriptioninformation 2300 can be presented to the user to encourage subscription.

FIG. 23A illustrates one example of a channel subscription informationGUI 2300 a that includes a title or description of the paid channel,different subscriber fees and subscription durations (e.g., $2.99/monthor $43.99/year), an access grace period (e.g., a 14 day trial), anadvertising attribute (e.g., no advertising), and a number of otherusers subscribed to the paid channel (e.g., 15,098,198). Channelsubscription information GUI 2300 a also includes a subscribe button1645 alongside a paid icon 1660. The subscribe button 1645 can receive arequest of a user to subscribe to the paid channel.

FIG. 23B illustrates one example of a composite channel subscriptioninformation GUI 2300 b that includes a title or description of the paidcomposite channel, a number of included component channels (e.g., twoadditional channels), different subscriber fees and subscriptiondurations (e.g., $2.99/month or $43.99/year), a type of access (e.g.,offline access), an advertising attribute (e.g., no advertising), and anumber of other users subscribed to the paid composite channel (e.g.,15,098,198). Channel subscription information interface 2300 b alsoincludes a subscribe button 1645 alongside a paid icon 1660. Thesubscribe button can be selected by a user to subscribe to the paidcomposite channel.

FIG. 23C illustrates another example of a channel subscriptioninformation GUI 2300 c for a paid channel that includes additionalinformation 2310 about subscribing to a composite channel that includesthe paid channel and four more component channels for the samesubscriber fee (e.g., $3.99/month).

FIG. 23D illustrates a further example of a composite channelsubscription information GUI 2300 d, which can be used when a userattempts to subscribe to a component channel that is only available viaa composite channel.

FIGS. 24A-D illustrates a paid channel subscription GUI flow inaccordance with some implementations of the present disclosure. FIGS.24A-D can be presented to a user on a single user device, or via asingle application.

FIG. 24A illustrates an example channel subscription GUI 2400. When auser discovers a channel of interest, the user can select a subscribebutton to initiate a flow to subscribe to the channel of interest. Whenthe user selects a subscribe button to subscribe to the channel ofinterest, the user is directed to channel subscription GUI 2400 whereinformation about that channel, including subscription information, ispresented to the user. The channel subscription GUI 2400 can include asubscription levels section 2425, a paid channel description 2440,additional subscription details 2441, a cancel button 2442 and acontinue button 2444.

The subscription levels section 2425 can be a listing of one or morechannels that the user can subscribe to using the example paid channelsubscription flow. When the channel of interest is a paid channel, thechannel subscription information 2410 can present additional informationabout the channel and subscription. For example, the channelsubscription information 2410 can inform the user of one or moresubscription periods and related subscriber fees. When the paid channelis a component channel of one or more composite channels, thesubscription levels section 2425 can also include composite channelsubscription information 2405, which informs the user of additional waysto obtain access to the channel of interest. Similar to the channelsubscription information 2410, the composite channel subscriptioninformation 2405 can inform the user of one or more subscription periodsand related subscriber fees. When multiple channels (e.g., paid andcomposite) are presented in subscription levels section 2425, the usercan select from the multiple channels and other portions of channelsubscription GUI 2400 (e.g., paid channel description 2440, channelsubscription details 2441) are populated with information about theselected channel.

Paid channel description 2440 can present further information about thepaid channel, such as the title of the channel and a paragraph of textthat describes the channel.

Channel subscription details 2441 can include further information aboutthe subscription, such as what type of access the user can have aftersubscribing to the paid channel, free trial information, etc.

FIG. 24B illustrates an example subscription payment GUI 2446, whichincludes user information 2448, payment details 2450, paid channeldescription 2454, subscriber fee 2456, and an accept button 2458.

The user information 2448 can include a user name when the user islogged in, or can request user access credentials when the user is notlogged in. Payment details 2450 can include a name or description of theentity receiving the payment, and a total charge for the subscription.When subscribing to multiple channels at once, payment details 2450 canalso include an itemized description of each channel the user issubscribing to. Payment details 2450 can also inform the user that thesubscriber fee is a recurring payment. Payment details 2450 can furtherinclude cancellation policies and terms of service. Payment details 2450can also include user payment information, such as how the user ispaying for the subscription (e.g., a credit card, digital currency,etc.). Subscriber fee 2456 can describe the total subscriber fee tosubscribe to the paid channel. When the user is ready to subscribe tothe paid channel, the user can activate the accept button 2458 tocomplete the purchase.

FIG. 24C illustrates an example watch GUI 2460 that can be presented tothe user immediately after the user subscribes to a paid channel. Thisenables a user whose media consumption experience was interrupted by apayment flow, such as the payment flow described in FIGS. 24A-B, toquickly resume consuming content. The watch GUI 2460 can include a mediaviewer 2462 that plays media items. The watch GUI 2460 can also includea check box 2415 and a subscribed button 2470 that indicates that theuser is subscribed to a paid channel that includes the media item.

FIG. 24D illustrates an example component channel addition GUI 2485according to some implementations of the present disclosure. After auser subscribes to a composite channel, the user can be automaticallysubscribed to all component channels. In another implementation, afterthe user subscribes to a composite channel, the user can be presentedwith a list of available component channels 2494A-F, which is depictedin component channel addition GUI 2485. The user can select or deselectone or more of the component channels to subscribe or unsubscribe to thecomponent channels 2494A-F. Since the user paid for access to thecomponent channels 2494A-F via the composite channel, the user may notneed to submit an additional subscriber fee when subscribing to thecomponent channels 2494A-F.

FIGS. 25 and 26 illustrate an example subscribed channel home GUI 2500and an example subscribed composite channel home GUI 2600, respectively.Each can include an indication to the user that the user is subscribed,such as the check box 2415 and a subscribed button 2470. In someimplementations, the appearance, organization or features subscribedchannel home GUI 2500 and the subscribed composite channel home GUI 2600can change depending on whether the user is subscribed to the paidchannel or composite channel. For example, a subscribed user may haveaccess to additional content, or to a features video when viewing thesubscribed channel home GUI 2500 or subscribed composite channel homeGUI 2600. In another implementation, only subscribers have access to seecontent of the paid channel or composite channel. For compositechannels, at least one of the component channels can be blocked fornon-subscribers.

In one implementation, a user may become subscribed to a compositechannel after the user subscribes to a threshold number of componentchannels. For example, the user is a subscriber of four componentchannels, each of which has a $0.99/month subscriber fee. A compositechannel that includes these four component channels, as well as threeadditional component channels and a few premium media items, can all beavailable through a composite channel with a subscriber fee of$2.99/month. The internet-based content provider can automaticallysubscribe the user to the composite channel and notify the user of theadditional component channels and premium media items that are nowavailable to the user. In one implementation, the internet-based contentprovider can refund or credit a difference in subscriber fee whenautomatically subscribing the user to the composite channel. In anotherexample similar to the example above, but the composite channel has asubscriber fee of $5.99/month. Although the user is paying an aggregatesubscriber fee of $3.96/month, which is less than the composite channelfee, the internet-based content provider can subscribe the user to thecomposite channel and notify the user of the availability of theadditional component channels and premium media items.

FIG. 27 is a diagram that illustrates an example subscription managerGUI 2700 in accordance with some implementation of the presentdisclosure. The subscription manager GUI 2700 permits users to view ormodify their channel subscriptions. The subscription manager GUI 2700includes a subscription manager section 2701, user lists and filters1515, and at least one advertisement 1525.

The subscription manager section 2701 can include a list of all of theuser's subscribed channels. Using various GUI tools, the user canfilter, sort and otherwise configure the display of the list ofchannels. As illustrated in FIG. 27, the subscribed channels have beenfiltered to show a user's paid channels, which includes three paidchannels 2705A-C and one composite channel 2720. The user can viewinformation about each of the channels, such as subscriber fees,subscription levels, types of access, subscription renewal status,billing cycles, rental expiration dates, subscription expiration dates,expired rentals, expired subscriptions, when the user subscribed to thechannel, payment method, etc. In some implementations, the subscriptionmanager section 2701 can present notifications to highlight variousaspects of subscribed channels. For example, subscription managersection 2701 can change the color of a channel title, decryption orprice (e.g., to red) to indicate that the subscription is getting closeto expiration. The subscription manager section 2701 can also present atotal price for all of the user's subscribed channels. The total pricecan also be presented with respect to price for a specific billingcycle, for example. Other examples of notifications can include anotification about subscriptions with potential payment problems (e.g.,credit card expiring soon, credit card expired), subscriptions that theuser canceled but still has access to until the end of the billingcycle, subscriptions the user has allowed to lapse, etc.

The subscription manager section 2701 can also present various interfacetools to the user to permit the user to perform different actions withrespect to the subscribed channels. For example, the user can renew asubscription to a channel from the subscription manager section 2701,modify an existing subscription (e.g., change a selected advertisingattribute, subscription level or type of access), place a subscriptionon hold, or can cancel a subscription. In one implementation, a user canselect an option for the internet-based content platform to remind theuser when a subscription is going to end soon. The user can select amethod of communicating such a reminder, such as email, text message,banner ad, etc. In the illustrate example, the subscription managersection 2701 includes a subscribe toggle 2735A-F that permits a user toquickly subscribe or unsubscribe to a channel.

For composite channels, such as composite channel 2720, the user canview all of the foregoing for the composite channel as well as forcomponent channels 2730A-B of the composite channel 2720. In addition,subscription manager section 2701 may permit users to unsubscribe from acomponent channel without unsubscribing from the composite channel 2720or from other component channels, as illustrated by the uncheckedsubscribe toggle 2735E.

FIG. 28 illustrates a diagrammatic representation of a machine in theexample form of a computing device 2800 within which a set ofinstructions, for causing the machine to perform any one or more of themethodologies discussed herein, may be executed. The computing device2800 may be a mobile phone, a smart phone, a netbook computer, arackmount server, a router computer, a server computer, a personalcomputer, a mainframe computer, a laptop computer, a tablet computer, adesktop computer etc., within which a set of instructions, for causingthe machine to perform any one or more of the methodologies discussedherein, may be executed. In alternative embodiments, the machine may beconnected (e.g., networked) to other machines in a LAN, an intranet, anextranet, or the Internet. The machine may operate in the capacity of aserver machine in client-server network environment. The machine may bea personal computer (PC), a set-top box (STB), a server, a networkrouter, switch or bridge, or any machine capable of executing a set ofinstructions (sequential or otherwise) that specify actions to be takenby that machine. Further, while only a single machine is illustrated,the term “machine” shall also be taken to include any collection ofmachines that individually or jointly execute a set (or multiple sets)of instructions to perform any one or more of the methodologiesdiscussed herein.

The example computing device 2800 includes a processing device (e.g., aprocessor) 2802, a main memory 2804 (e.g., read-only memory (ROM), flashmemory, dynamic random access memory (DRAM) such as synchronous DRAM(SDRAM)), a static memory 2806 (e.g., flash memory, static random accessmemory (SRAM)) and a data storage device 2816, which communicate witheach other via a bus 2808.

Processing device 2802 represents one or more general-purpose processingdevices such as a microprocessor, central processing unit, or the like.More particularly, the processing device 2802 may be a complexinstruction set computing (CISC) microprocessor, reduced instruction setcomputing (RISC) microprocessor, very long instruction word (VLIW)microprocessor, or a processor implementing other instruction sets orprocessors implementing a combination of instruction sets. Theprocessing device 2802 may also be one or more special-purposeprocessing devices such as an application specific integrated circuit(ASIC), a field programmable gate array (FPGA), a digital signalprocessor (DSP), network processor, or the like. The processing device2802 is configured to execute instructions 2826 for performing theoperations and steps discussed herein.

The computing device 2800 may further include a network interface device2822 which may communicate with a network 2818. The computing device2800 also may include a display device 2810 (e.g., a liquid crystaldisplay (LCD) or a cathode ray tube (CRT)), an alphanumeric input device2812 (e.g., a keyboard), a cursor control device 2814 (e.g., a mouse)and a signal generation device 2820 (e.g., a speaker). In oneimplementation, the display device 2810, the alphanumeric input device2812, and the cursor control device 2814 may be combined into a singlecomponent or device (e.g., an LCD touch screen).

The data storage device 2816 may include a computer-readable storagemedium 2824 on which is stored one or more sets of instructions 2826(e.g., channel subscription subsystem, channel content providingsubsystem, channel advertisement management subsystem, channel contentaccess management subsystem, composite channel management subsystem)embodying any one or more of the methodologies or functions describedherein. The instructions 2826 may also reside, completely or at leastpartially, within the main memory 2804 and/or within the processingdevice 2802 during execution thereof by the computing device 2800, themain memory 2804 and the processing device 2802 also constitutingcomputer-readable media. The instructions may further be transmitted orreceived over a network 2818 via the network interface device 2822.

While the computer-readable storage medium 2826 is shown in an exampleembodiment to be a single medium, the term “computer-readable storagemedium” should be taken to include a single medium or multiple media(e.g., a centralized or distributed database and/or associated cachesand servers) that store the one or more sets of instructions. The term“computer-readable storage medium” shall also be taken to include anymedium that is capable of storing, encoding or carrying a set ofinstructions for execution by the machine and that cause the machine toperform any one or more of the methodologies of the present disclosure.The term “computer-readable storage medium” shall accordingly be takento include, but not be limited to, solid-state memories, optical mediaand magnetic media.

In the above description, numerous details are set forth. It will beapparent, however, to one of ordinary skill in the art having thebenefit of this disclosure, that embodiments of the disclosure may bepracticed without these specific details. In some instances, well-knownstructures and devices are shown in block diagram form, rather than indetail, in order to avoid obscuring the description.

Some portions of the detailed description are presented in terms ofalgorithms and symbolic representations of operations on data bitswithin a computer memory. These algorithmic descriptions andrepresentations are the means used by those skilled in the dataprocessing arts to most effectively convey the substance of their workto others skilled in the art. An algorithm is here and generally,conceived to be a self-consistent sequence of steps leading to a desiredresult. The steps are those requiring physical manipulations of physicalquantities. Usually, though not necessarily, these quantities take theform of electrical or magnetic signals capable of being stored,transferred, combined, compared and otherwise manipulated. It has provenconvenient at times, principally for reasons of common usage, to referto these signals as bits, values, elements, symbols, characters, terms,numbers, or the like.

It should be borne in mind, however, that all of these and similar termsare to be associated with the appropriate physical quantities and aremerely convenient labels applied to these quantities. Unlessspecifically stated otherwise as apparent from the above discussion, itis appreciated that throughout the description, discussions utilizingterms such as “identifying,” “subscribing,” “providing,” “determining,”“unsubscribing,” “receiving,” “generating,” “changing,” “requesting,”“creating,” “uploading,” “adding,” “presenting,” “removing,”“preventing,” “playing,” or the like, refer to the actions and processesof a computer system, or similar electronic computing device, thatmanipulates and transforms data represented as physical (e.g.,electronic) quantities within the computer system's registers andmemories into other data similarly represented as physical quantitieswithin the computer system memories or registers or other suchinformation storage, transmission or display devices.

Embodiments of the disclosure also relate to an apparatus for performingthe operations herein. This apparatus may be specially constructed forthe required purposes, or it may comprise a general purpose computerselectively activated or reconfigured by a computer program stored inthe computer. Such a computer program may be stored in a non-transitorycomputer readable storage medium, such as, but not limited to, any typeof disk including floppy disks, optical disks, CD-ROMs andmagnetic-optical disks, read-only memories (ROMs), random accessmemories (RAMs), EPROMs, EEPROMs, magnetic or optical cards, flashmemory, or any type of media suitable for storing electronicinstructions.

The words “example” or “exemplary” are used herein to mean serving as anexample, instance, or illustration. Any aspect or design describedherein as “example’ or “exemplary” is not necessarily to be construed aspreferred or advantageous over other aspects or designs. Rather, use ofthe words “example” or “exemplary” is intended to present concepts in aconcrete fashion. As used in this application, the term “or” is intendedto mean an inclusive “or” rather than an exclusive “or”. That is, unlessspecified otherwise, or clear from context, “X includes A or B” isintended to mean any of the natural inclusive permutations. That is, ifX includes A; X includes B; or X includes both A and B, then “X includesA or B” is satisfied under any of the foregoing instances. In addition,the articles “a” and “an” as used in this application and the appendedclaims should generally be construed to mean “one or more” unlessspecified otherwise or clear from context to be directed to a singularform. Moreover, use of the term “an embodiment” or “one embodiment” or“an implementation” or “one implementation” throughout is not intendedto mean the same embodiment or implementation unless described as such.Furthermore, the terms “first,” “second,” “third,” “fourth,” etc. asused herein are meant as labels to distinguish among different elementsand may not necessarily have an ordinal meaning according to theirnumerical designation.

The algorithms and displays presented herein are not inherently relatedto any particular computer or other apparatus. Various general purposesystems may be used with programs in accordance with the teachingsherein, or it may prove convenient to construct a more specializedapparatus to perform the required method steps. The required structurefor a variety of these systems will appear from the description below.In addition, the present disclosure is not described with reference toany particular programming language. It will be appreciated that avariety of programming languages may be used to implement the teachingsof the disclosure as described herein.

The above description sets forth numerous specific details such asexamples of specific systems, components, methods and so forth, in orderto provide a good understanding of several embodiments of the presentdisclosure. It will be apparent to one skilled in the art, however, thatat least some embodiments of the present disclosure may be practicedwithout these specific details. In other instances, well-knowncomponents or methods are not described in detail or are presented insimple block diagram format in order to avoid unnecessarily obscuringthe present disclosure. Thus, the specific details set forth above aremerely examples. Particular implementations may vary from these exampledetails and still be contemplated to be within the scope of the presentdisclosure.

It is to be understood that the above description is intended to beillustrative and not restrictive. Many other embodiments will beapparent to those of skill in the art upon reading and understanding theabove description. The scope of the disclosure should, therefore, bedetermined with reference to the appended claims, along with the fullscope of equivalents to which such claims are entitled.

What is claimed is:
 1. A method, implemented by an internet-basedcontent sharing platform, comprising: generating, by a processing deviceof the internet-based content sharing platform, a first feed forpresentation on a screen of a user device of a first user of a pluralityof users of the internet-based content platform, the first feedidentifying a first channel of a plurality of channels provided by theinternet-based content platform, the first channel being recommended tothe first user in the first feed, the first feed indicating that thefirst user is not subscribed to the first channel; upon a selection ofthe first channel by the first user in the first feed, providing, forpresentation on the screen of the user device of the first user, thefirst channel comprising a plurality of media items, a list of levels ofaccess to the plurality of media items of the first channel, and aplurality of subscription levels associated with different subscriptionfees for different levels of access to the plurality of media items ofthe first channel, wherein an owner of the first channel is a seconduser of the plurality of users of the internet-based content platform,wherein the plurality of subscription levels associated with thedifferent subscription fees for the different levels of access to theplurality of media items of the first channel are defined based on inputof the second user, wherein the different levels of access correspond todifferent sets of permissions with respect to the plurality of mediaitems of the first channel; receiving, by the processing device, aselection of one of the plurality of subscription levels for the firstchannel by the first user; recording, by the processing device, theselected subscription level of the first user for the first channel;modifying the first feed to indicate that the first user is subscribedto the first channel, wherein the modified first feed is to be presentedon the screen of the user device of the first user; providing, by theprocessing device, a level of access to the plurality of media items ofthe first channel for the first user according to the recordedsubscription level of the first user for the first channel; andgenerating, by the processing device, a second feed for presentation ona screen of a user device of the second user, the second feedidentifying the first channel owned by the second user and one or moresecond channels of the plurality of channels provided by theinternet-based content platform, wherein the second feed indicates thatthe second user is subscribed to the one or more second channels, andwherein the second user is allowed to add more media items to the firstchannel for access by the first user according to the recordedsubscription level.
 2. The method of claim 1, wherein the level ofaccess to the plurality of media items affects first user consumption ofone or more of the plurality of media items of the first channel.
 3. Themethod of claim 1, wherein receiving the selection of one of theplurality of subscription levels for the first channel comprisesreceiving a request of the first user to subscribe to the first channel.4. The method of claim 1, wherein the selected subscription levelpertains to one or more quality characteristics for consuming theplurality of media items of the first channel, and wherein providing thelevel of access to the plurality of media items of the first channelcomprises ensuring that the plurality of media items are presented tothe first user according to the one or more quality characteristics. 5.The method of claim 1, wherein the selected subscription level unlocksaccess to the plurality of media items of the first channel on aplurality of user devices, and wherein providing the level of access tothe plurality of media items of the first channel comprises presentingthe plurality of media items on any of the plurality of user devicesupon receiving a user request.
 6. The method of claim 1, wherein theselected subscription level unlocks offline access to the plurality ofmedia items of the first channel, and wherein providing the level ofaccess to the plurality of media items of the first channel comprisescausing at least one of the plurality of media items of the firstchannel to be stored on the user device of the first user.
 7. The methodof claim 1, wherein the selected subscription level pertains to addingsubtitles to one or more media items in the first channel, and whereinproviding the level of access to the plurality of media items of thefirst channel comprises providing subtitles with one or more media itemsin the first channel.
 8. The method of claim 1, wherein the selectedsubscription level pertains to changing a language of at least one mediaitem of the first channel, and wherein providing the level of access tothe plurality of media items of the first channel comprises changing thelanguage of one or more media items in the first channel.
 9. The methodof claim 1, wherein the first channel is a composite channel thatcomprises a plurality of component channels.
 10. The method of claim 9,wherein the first channel is a composite channel comprising at least onecomponent channel and at least one media item that is not part of anycomponent channel.
 11. The method of claim 9, wherein the plurality ofcomponent channels comprises a first component channel and a secondcomponent channel, wherein the first component channel has a firstsubscription level, and the second component channel has a secondsubscription level.
 12. A system, comprising: a memory; and a processingdevice coupled with the memory, the processing device being configuredto generate, for presentation on a screen of a user device of a firstuser of a plurality of users of an internet-based content platform, afirst feed identifying a first channel of a plurality of channelsprovided by the internet-based content platform, the first channel beingrecommended to the first user in the first feed, the first feedindicating that the first user is not subscribed to the first channel;upon a selection of the first channel by the first user in the firstfeed, provide, for presentation on the screen of the user device of thefirst user, the first channel comprising a plurality of media items, alist of levels of access to the plurality of media items of the firstchannel, and a plurality of subscription levels associated withdifferent subscription fees for different levels of access to theplurality of media items of the first channel, wherein an owner of thefirst channel is a second user of the plurality of users of theinternet-based content platform, wherein the plurality of subscriptionlevels associated with the different subscription fees for the differentlevels of access to the plurality of media items of the first channelare defined based on input of the second user, wherein the differentlevels of access correspond to different sets of permissions withrespect to the plurality of media items of the first channel; receive aselection of one of the plurality of subscription levels for the firstchannel by the first user; record the selected subscription level of thefirst user for the first channel; modify the first feed to indicate thatthe first user is subscribed to the first channel, wherein the modifiedfirst feed is to be presented on the screen of the user device of thefirst user; provide a level of access to the plurality of media items ofthe first channel for the first user according to the recordedsubscription level of the first user for the first channel; and generatea second feed for presentation on a screen of a user device of thesecond user, the second feed identifying the first channel owned by thesecond user and one or more second channels of the plurality of channelsprovided by the internet-based content platform, wherein the second feedindicates that the second user is subscribed to the one or more secondchannels, and wherein the second user is allowed to add more media itemsto the first channel for access by the first user according to therecorded subscription level.
 13. The system of claim 12, wherein thelevel of access to the plurality of media items affects first userconsumption of one or more of the plurality of media items of the firstchannel.
 14. The system of claim 12, wherein when receiving theselection of one of the plurality of subscription levels for the firstchannel, the processing device being configured to receive a request ofthe first user to subscribe to the first channel.
 15. The system ofclaim 12, wherein the selected subscription level pertains to one ormore quality characteristics for consuming the plurality of media itemsof the first channel, and wherein when providing the level of access tothe plurality of media items of the first channel, the processing devicebeing configured to present the plurality of media items to the firstuser according to the one or more quality characteristics.
 16. Thesystem of claim 12, wherein the selected subscription level unlocksaccess to the plurality of media items of the first channel on aplurality of user devices, and wherein when providing the level ofaccess to the plurality of media items of the first channel, theprocessing device being configured to present the plurality of mediaitems on any of the plurality of user devices upon receiving a userrequest.
 17. The system of claim 12, wherein the selected subscriptionlevel pertains to changing a language of at least one media item of thefirst channel, and wherein when providing the level of access to theplurality of media items of the first channel, the processing devicebeing configured to change the language of one or more media items inthe first channel.
 18. The system of claim 12, wherein the first channelis a composite channel that comprises a plurality of component channels.19. The system of claim 18, wherein the first channel is a compositechannel comprising at least one component channel and at least one mediaitem that is not part of any component channel.
 20. The system of claim18, wherein the plurality of component channels comprises a firstcomponent channel and a second component channel, wherein the firstcomponent channel has a first subscription level, and the secondcomponent channel has a second subscription level.
 21. A non-transitorycomputer readable storage medium, having instructions stored therein,which when executed, cause a processing device to perform operationscomprising: generating, for presentation on a screen of a user device ofa first user of a plurality of users of and internet-based contentplatform, a first feed identifying a first channel of a plurality ofchannels provided by the internet-based content platform, the firstchannel being recommended to the first user in the first feed, the firstfeed indicating that the first user is not subscribed to the channel;upon a selection of the first channel by the first user in the firstfeed, providing, for presentation on the screen of the user device ofthe first user, the first channel comprising a plurality of media items,a list of levels of access to the plurality of media items of the firstchannel, and a plurality of subscription levels associated withdifferent subscription fees for different levels of access to theplurality of media items of the first channel, wherein an owner of thefirst channel is a second user of the plurality of users of theinternet-based content platform, wherein the plurality of subscriptionlevels associated with the different subscription fees for the differentlevels of access to the plurality of media items of the first channelare defined based on input of the second user, wherein the differentlevels of access correspond to different sets of permissions withrespect to the plurality of media items of the first channel; receivinga selection of one of the plurality of subscription levels for the firstchannel by the first user; recording the selected subscription level ofthe first user for the first channel; modifying the first feed toindicate that the first user is subscribed to the first channel, whereinthe modified feed is to be presented on the screen of the user device ofthe first user; providing a level of access to the plurality of mediaitems of the first channel for the first user according to the recordedsubscription level of the first user for the first channel; andgenerating a second feed for presentation on a screen of a user deviceof the second user, the second feed identifying the first channel ownedby the second user and one or more second channels of the plurality ofchannels provided by the internet-based content platform, wherein thesecond feed indicates that the second user is subscribed to the one ormore second channels, and wherein the second user is allowed to add moremedia items to the first channel for access by the first user accordingto the recorded subscription level.
 22. The non-transitory computerreadable storage medium of claim 21, wherein receiving the selection ofone of the plurality of subscription levels for the first channelcomprises receiving a request of the first user to subscribe to thefirst channel.
 23. The non-transitory computer readable storage mediumof claim 21, wherein the selected subscription level pertains to one ormore quality characteristics for consuming the plurality of media itemsof the first channel, and wherein providing the level of access to theplurality of media items of the first channel comprises ensuring thatthe plurality of media items are presented to the first user accordingto the one or more quality characteristics.
 24. The non-transitorycomputer readable storage medium of claim 21, wherein the selectedsubscription level unlocks offline access to the plurality of mediaitems of the first channel, and wherein providing the level of access tothe plurality of media items of the first channel comprises causing atleast one of the plurality of media items of the first channel to bestored on a user device.
 25. The non-transitory computer readablestorage medium of claim 21, wherein the selected subscription levelpertains to changing a language of at least one media item of the firstchannel, and wherein providing the level of access to the plurality ofmedia items of the first channel comprises changing the language of oneor more media items in the first channel.